August 2009 - Artículos

 

 

Buenas

revisando los threads en los foros en español de Team System (del cual tengo la suerte de ser moderador), una respuesta del gran Jose Luis Soria hizo que saque de los borradores un post relacionado con el archivo vsvars32.bat. Por lo general, cuando comienzas a crear soluciones para Visual Studio con archivos bat, llegas a un punto donde necesitas setear variables de contexto que ayuden a acceder a los elementos propios de .Net Framework, de Visual Studio y de otras herramientas.

Una de las soluciones más comunes, es agregar en el PATH local la información necesaria; pero también es posible realizar esta acción en el mismo bat para ahorrarnos el seteo en cada máquina. El archivo [C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat] se encarga de setear estas variables de contexto y nos ahorra una tarde de investigación al respecto. El artículo oficial de MSDN se puede revisar desde http://msdn.microsoft.com/es-es/library/1700bbwd.aspx

Ahora con la llegada de PowerShell, la verdad es que la creación de un bar puede ser algo pesado y obsoleto; asi que si buscas una versión del vsvars32.bat pero para Powershell, puedes echarle un vistazo a http://www.agileprogrammer.com/dotnetguy/archive/2007/11/22/23853.aspx

 

Saludos @ Mom’s House

El Bruno

Buenas,

si quieres comenzar a probar alguna de las tecnologías para la nube que posee Microsoft y no sabes por donde comenzar, tal vez Project Riviera pueda ayudarte. Project Riviera es una aplicación completa para la gestión de clientes desarrollada por un partner de Microsoft  (Cumulux) y que demuestra la utilización de las tecnologías que engloba la plataforma Azure: .Net Services, SQL Azure, etc.

cumulux

 

Fuente: http://blogs.msdn.com/usisvde/archive/2009/08/29/azure-reference-architecture-explored-with-project-riviera.aspx

 

Saludos @ Mom’s house

El Bruno

Recursos: http://code.msdn.microsoft.com/riviera, http://www.microsoft.com/azure/resources.mspx

Buenas,

algunos de los que no somos fanáticos de las aplicaciones web siempre sufrimos con los web.config. Personalmente siempre me pareció que la cantidad de información útil de negocio que poseen los archivos de configuración web, es mínima en comparación con la configuración de entorno .net requerida. Hace un tiempo cuando surgió la oportunidad de sugerir mejoras, una de las que apoyé fue la de mejorar el tamaño e información en los archivos Web.Config.

Con la llegada del .Net Framework 4.0 una de los mejoras que se han incorporado es que el archivo machine.config ya registra automáticamente las extensiones AJAX, las secciones para ASP.Net Routing y otras mejoras más que se han incorporado en las ultimas versiones de ASP.Net pero que no eran parte del core del Framework.

De esta forma pasamos de tener un web.config de más de 100 líneas con Visual Studio 2008:

image

a uno más simple con las opciones mínimas de configuración:

 image

Saludos @ Cordoba.com.ar

El Bruno

image

Buenas,

gracias a la gente de Alt1040 encontré este interesante bot creado con un LEGO Mindstorms NXT que resuelve Sudokus automáticamente utilizando el sensor de luminosidad como un scanner y los servomotores para controlar el movimiento.

 

Además de este ejemplo cursioso y que demuestra como aprovechar al máximo las capacidades del LEGO, en la página del crack de Hans Anderson también existe un paso a paso para armar el clásico y popular RESOLVEDOR DE CUBOS DE RUBIK; como siempre digo en las charlas de robótica, no se si la palabra resolvedor existe, pero RUBIK SOLVER queda un poco impersonal.

 

Saludos @ Marcos Juarez

El Bruno

Fuentes:  http://alt1040.com/2009/08/un-robot-capaz-de-resolver-sudokus, http://tiltedtwister.com

Buenas,

hace casi un mes comenté que existía una versión de Dinner Now para descargar desde CodePlex. Este proyecto intenta armar un ejemplo práctico de una solución con una base sobre .Net Framework que integre las tecnologías más importantes de esta plataforma. El mismo cuando se descarga permite instalar la solución y acceder a todo el código fuente de la solución y sus partes: componentes de negocio, portales web, etc.

La nueva versión 3.1 incopora soporte a los flamantes lanzamientos en lo que a Sistemas Operativos se refiere: Windows 7 y Windows Server 2008 R2; además de dar soporte para PowerShell 2.0 y también soportar las versiones de 64 bits.

Yo jugué un poco con la versión 3.0, y espero robar tiempo en vacaciones (si la Gibson me deja) para probar esta versión.

 

Saludos @ La casa de mi padre

El Bruno

Fuente: http://blogs.msdn.com/habibh/archive/2009/08/17/dinnernow-net-3-1-for-windows-7-and-windows-server-2008-r2-released.aspx

Buenas,

hace un par de días comenté como podíamos hacer para conectarnos a un servidor TFS 2010 desde Visual Studio 2008. Uno de los temas que toqué es que ahora en TFS 2010 los Team Projects se almacenan en Team Project Collections. Los Team Project Collections (TPC), permiten independizar en un mismo servidor de TFS a varios Team Projects (TP).

En la versión de TFS 2008 un único servidor podía almacenar uno o más TP independientes entre sí. Pero en algunas ocasiones, los TPs podían compartir branches del Source Control, tener WorkItem Queries con consultas a varios TPs, los números de changeset eran compartidos por todo el server, etc. Esta arquitectura de TFS hacía que las acciones de migración de servers o consolidación de 2 servidores de TFS fueran tareas casi imposibles de realizar.

En TFS 2010, este problema se soluciona en gran parte con la introducción del concepto de Team Project Collections. Una TPC es una entidad única en donde pueden residir uno o más Team Projects. Lo interesante de este esquema es que desde la consola de administración de TFS podemos crear nuevos TPC y cada uno de ellos reside en una única base de datos, con lo que la migración o consolidación es una tarea muy simple.

Para aquellos que conocen Sharepoint el concepto es muy similar al de los Sharepoint Site Collections (creo que se llaman así, disculpad mi ignorancia si me equivoco)

En el siguiente tutorial veremos como crear un TPC y que impacto tiene el mismo.

Tutorial

1. Abrir la consola Team Foundation Administration Console.

image

2. En este caso existe una única TPC llamada ElBrunoCollection (gran demostración de los que los argentinos llamamos algo forma de ser, y el resto del mundo llama ego)

3. Hacemos click en el link Create Team Project Collection. y vemos como aparece el asistente para la creación de TPC.

image

4. Definimos la instancia de base de datos en la que se creará la TPC y además podemos elegir si queremos que se cree en una nueva base de datos o en una base de datos existente.

image

5. Definimos las opciones de creación para el site de Sharepoint. Por defecto se crea en el server que tiene configurado el TFS con el nombre del TPC.

image

6. Definimos las opciones de Reporting Services

image

7. Configuramos las opciones de integración con el entorno de Test. Lamentablemente mi entorno todavía no tiene Lab Management, espero poder configurarlo para la Beta 2.

image

8. Verificamos los parametros de configuración para la creación del TPC y procedemos a crear el mismo.

image

9. Comienza el proceso de creación del TPC, donde podemos ver como se crean los componentes base, el gestor de versiones, las opciones del Team Build, la gestion de WorkItems, etc. Si bien este proceso se lanza con varias opciones en paralelo, el mismo tarda bastante.

image

10. El TPC se crea correctamente y podemos ver el log de creación si queremos ver el detalle del mismo.

image

11. A partir de este momento ya podemos ver en la consola de administración de TFS 2010, un nuevo TPC. Desde esta misma consola podemos detener una TPC y administrar la misma: cambiar su descripción, gestionar la seguridad, etc.

image

12. Desde la misma consola podemos comprobar que no existen Team Projects creados en la nueva TPC.

image

13. Asimismo si conectamos al server de base de datos del TFS, podremos ver 2 distinas bases de datos para cada TPC: Tfs_ElBrunoCollection y Tfs_TPC01.

image

14. Finalmente si conectamos al servidor TFS 2010 desde Visual Studio 2010, podremos ver como aparecen 2 Team Project Collections dentro del mismo y para conectarnos a un Team Project en particular, debemos seleccionar primero una TPC.

image

 

Saludos @ Rio IV

El Bruno

Buenas,

aquellos que alguna vez hayan tenido que desarrollar aplicaciones multithreading seguramente coincidirán que la tecnología es peligrosa muy potente, pero el IDE de Visual Studio 2008 era un poco pobre para la depuración de estas aplicaciones.

Disclaimer: no quiero animar a nadie a empezar a crear miles de threads a cascoporro con 2 líneas de código, siempre he opinado que la decisión de utiilzar threads para gestionar algo en una aplicación debe ser una de las últimas opciones. Este tipo de soluciones, sino están bien implementadas suelen traer más problemas que beneficios.

Desde hace un tiempo sigo en el blog de The Moth (Daniel Moth) una serie de artículos muy interesantes sobre este tema. Y una de las cosas que más me ha llamado la atención son 2 nuevos paneles en el IDE de Visual Studio que nos ayudan en la depuración en estos escenarios: Parallel Tasks y Parallel Stacks.

image

Partiendo de un ejemplo de Daniel y deteniendo una aplicación en tiempo de ejecución, podemos ver que ambos paneles muestran información más que interesante.

En la ventana Parallel Tasks es posible visualizar las tareas en ejecución, las tareas programadas, y las tareas que están en espera de ser reactivadas.

image

Además para cada elemento podemos congelar una tarea, cambiar el contexto a la misma o congelar todas las tareas menos una en particular.

image

En la ventana Parallel Stacks, es posible ver de forma gráfica los threads en ejecución y la relación entre los mismos (lo que conocemos como Call Stack, pero de forma gráfica). Además aprovechando la potencia de WPF, podemos gestionar el zoom en este diagrama para ver en mayor o menor detalle, el panorama global de ejecución.

image

Todavía no me alcanzan las palabras para describir lo importante que puede ser esto en depuraciones realmente complejas. Y si bien no funciona con el Historical Debugging (es mucho pedir ya lo sé, pero pedir es gratis) creo que puede ser de gran ayuda para estabilizar esas aplicaciones un poco raras que andan dando vueltas por alli y para terminar de comprender como funcionan estas aplicaciones.

image

 

Saludos @ Rio IV

El Bruno

Buenas,

la sección/característica llamada Document Margin incorporada en el editor de archivos en Visual Studio 2010 permite entre otras cosas visualizar el navegador para el depurador histórico, visualizar los cambios en el modo Annotate, etc. Lo interesante de esta sección es que también permite adaptarla a nuestras necesidades o gustos utilizando el modelo de extensibilidad de Visual Studio. Además, para las tareas más simples, esta sección nos puede ayudar mucho, como por ejemplo en la edición de un archivo de texto plano.

El siguiente paso a paso demuestra esta funcionalidad en su modo más simple.

Tutorial

1. Supongamos que dentro de nuestro Source Control, existe un archivo llamado Demo.txt.

image

2. Si hacemos doble click o desplegamos el botón derecho sobre el archivo y seleccionamos la opcion View; veremos como se abre el editor de texto de Visual Studio 2010.

image

3. Nos centraremos sobre la zona izquierda del editor, que está en con un color de fondo en gris.

4. Si ponemos el cursor sobre el final del texto y presionamos [Enter]; veremos como el archivo se desbloquea para la edición del mismo y como el nuevo texto, aparece con una línea amarilla en la sección izquierda.

image

5. Agregamos nuevo texto y vemos como la línea amarilla identifica al texto nuevo, pero sin grabar del archivo que estamos editando.

image

6. Si guardamos el documento, veremos como las modificaciones se identifican ahora en color verde, es decir, que ya se han grabado.

image

7. De esta forma fácilmente podemos ver el texto nuevo, y el que todavía no está grabado en un documento. Por ejemplo, en la siguiente imagen podemos ver como en verde está el texto original ya grabado; y en amarillo un nuevo texto agregado al documento. (antes que ningún lector se enfade y critique como le pasó a Jorge he hecho Copy/Paste desde un post propio, disculpad por autoplagiarme)

image

Saludos @ Home

El Bruno

Buenas

la siguiente imagen muestra un gráfico con la cantidad de horas que se trabajan por semana en algunos paises. En el caso de España, cuando vuelva de vacaciones tendré que conocer a los que tiran el promedio a 31 horas por semanas, porque yo trabajo un poquito más.

3797144896_e5abba1cd0_o[1]

Las conclusiones saltan a la vista, ¿no?

Saludos @ Here

El Bruno

Fuente: http://blogs.msdn.com/stevecla01/archive/2009/08/18/working-around-the-world.aspx

Buenas,

durante los últimos meses estoy viendo como cada vez más personas y empresas aprovechan el excelente modelo de extensibilidad que se ha incorporado en Visual Studio 2010, y crean excelentes extensiones para el IDE de Visual Studio. Lamentablemente estas empresas enfocan su trabajo orientado a mejorar la productividad del usuario pero ninguna piensa en el el ocio: por ejemplo en la posibilidad de ver videos de Channel 9 dentro de Visual Studio mientras uno codifica.

Esto es relativamente fácil y en 5 minutos lo podemos tener funcionando. En el siguiente tutorial describo como hacerlo.

Tutorial

1. Para aprovechar un poco de trabajo ya creado, aprovecharemos uno de los templates que existen en la Beta 1, y crearemos un proyecto del tipo Editor Margin.

image

2. En el proyecto de extensibilidad podremos ver que el mismo posee 2 clases principales: GreenMargin.cs y MarginFactory.cs.

image

3.  Renombramos la clase GreenMargin por C9VideoMargin.

4. Modificamos el codigo como en el siguiente ejemplo. He dejado sin código las regiones en las líneas 46 a 50 para no tener que copiar todo el código.

   1:  using System;
   2:  using System.Windows.Controls;
   3:  using System.Windows.Media;
   4:  using Microsoft.VisualStudio.Text.Editor;
   5:   
   6:  namespace ElBruno.VSIDE.Channel9Viewer
   7:  {
   8:    class C9VideoMargin : Canvas, IWpfTextViewMargin
   9:    {
  10:      //The name of the margin
  11:      public const string MarginName = "C9VideoMargin";
  12:   
  13:      // The IWpfTextView that our margin will be attached to.
  14:      private IWpfTextView _textView;
  15:   
  16:      // A flag stating whether this margin has been disposed
  17:      private bool _isDisposed = false;
  18:   
  19:      /// <summary>
  20:      /// Creates a <see cref="C9VideoMargin"/> for a given <see cref="IWpfTextView"/>.
  21:      /// </summary>
  22:      /// <param name="textView">The <see cref="IWpfTextView"/> to attach the margin to.</param>
  23:      public C9VideoMargin(IWpfTextView textView)
  24:      {
  25:        // Set the IWpfTextView
  26:        _textView = textView;
  27:   
  28:        // Establish the background of the margin.
  29:        this.Height = 20;
  30:        this.ClipToBounds = true;
  31:        this.Background = new SolidColorBrush(Colors.Orange);
  32:   
  33:        MediaElement videoChannel9 = new MediaElement()
  34:        {
  35:          Source = new Uri("http://mschnlnine.vo.llnwd.net/d1/ch9/1/8/3/0/5/4/VSTS08_ch9.wmv")
  36:        };
  37:        this.Children.Add(videoChannel9);
  38:      }
  39:   
  40:      private void ThrowIfDisposed()
  41:      {
  42:        if (_isDisposed)
  43:          throw new ObjectDisposedException(MarginName);
  44:      }
  45:   
  46:      #region IWpfTextViewMargin Members
  47:      #endregion
  48:   
  49:      #region ITextViewMargin Members
  50:      #endregion
  51:    }
  52:  }

5. El constructor de la clase (definido entre las líneas 23 y 38) es el encargado de decorar a la ventana de edición de código con un nuevo visor de videos (basado en un MediaElement) y luego asociar al mismo la ruta de un video de Channel 9. En este caso un video de casi 20 minutos donde hago un recorrido por VSTS: Un paseo por Visual Studio Team System 2008.

5. Una vez agregado el decorador que en el margin del editor de código agregará el visor de Video, debemos modificar la clase MarginFactory para que agregue el decorador en la sección superior. El siguiente cógigo muestra un ejemplo de la versión original modificada. En la línea 10 podemos ver como se define que el contenedor estará en la zona superior.

   1:  using System.ComponentModel.Composition;
   2:  using Microsoft.VisualStudio.Text.Editor;
   3:  using Microsoft.VisualStudio.Utilities;
   4:  namespace ElBruno.VSIDE.Channel9Viewer
   5:  {
   6:    #region ElBruno.VSIDE.Channel9Viewer Factory
   7:    [Export(typeof(IWpfTextViewMarginProvider))]
   8:    [Name("GreenBar")]
   9:    [Order(After = "HorizontalScrollbar")]
  10:    [MarginContainer(MarginContainerAttribute.Top)]
  11:    [ContentType("text")]
  12:    [TextViewRole("interactive")]
  13:    internal sealed class MarginFactory : IWpfTextViewMarginProvider
  14:    {
  15:      public IWpfTextViewMargin CreateMargin(IWpfTextViewHost textViewHost, IWpfTextViewMargin containerMargin)
  16:      {
  17:        return new C9VideoMargin(textViewHost.TextView);
  18:      }
  19:    }
  20:    #endregion
  21:  }

6. Una vez completado el ejemplo, ya podemos ejecutar el mismo y veremos como se levanta una nueva instancia del entorno esperimental de trabajo de Visual Studio para que probemos esta extensión

image

7. Si creamos un nuevo proyecto del tipo Class Library u otro que nos permita acceder a un editor de código podremos ver como en el mismo, en la sección superior comienza a pasar automáticamente el video de Channel 9 con el fondo naranja que definimos en la clase C9VideoMargin, en la línea 31.

image image

 

En pocos pasos hemos agregado un visor de videos a nuestro entorno de trabajo y después con un poco más de tiempo, podríamos acomodar el tamaño (150 pixels es poco a nivel Height), incorporar una barra de navegación, etc.

El código de la demo se puede descargar desde http://cid-bef06dffdb192125.skydrive.live.com/self.aspx/Code%20Samples/2009%2008%2017%20ElBruno.VSIDE.Channel9Viewer.zip

Espero poder sacar un poco más de tiempo en vacaciones para poder cerrar alguna extension interesante no orientada a la productividad.

 

Saludos @ Rio IV

El Bruno

Team System User Group - Virtual Edition

Buenas,

el próximo 20 de Agosto hay 2 eventos muy interesantes si quieres conocer un poco más sobre Team System, de la mano de los chicos de Team System User Group Virtual Edition (TSUGVE http://www.tsug-ve.com/)

En el 1ro, Tiago Pascual comentará un poco el extraño mundo de los controles personalizados para los WorkItems en Team System. No es un escenario muy usual, la necesidad de tener que desarrollar estos controles, pero sin embargo existen situaciones donde es necesario crear los mismos y muchas veces no sabemos por donde empezar y mucho menos como desplegarlos.

El 2do evento trata sobre las novedades incluidas en la GDR R2 para VSTS, especialmente orientado al despliegue y automatización de las tareas de CI con objetos de base de datos. John Burns es el encargado de la sesión.

August Meeting (EMEA)
Date: Thursday, August 20th, 2009
Time: 10:00AM PDT/SLT (18:00 UTC)
[Add to calendar]

Team System Custom Controls

August Meeting (Americas)
Date: Thursday, August 20th, 2009
Time: 5:00PM PDT/SLT
[Add to calendar]

DB Pro, BIDS, and Team Build: The Good, The Bad, and The Ugly

Saludos @ Rio IV

El Bruno

image

Buenas,

hoy que es viernes toca desenchufar un poco en vacaciones y poner un video de ese personaje de gafitas que hace un par de años se hizo famoso creando un par de aplicaciones chulas con el mando de la Wii. Lo interesante del caseo es que la gente de E&D de Microsoft contactó a Jhonny Chung Lee y se lo han llevado para que vea en que puede ayudar a las nuevas relaciones entre los usuarios y los aplicativos.

El siguiente video [Research into Interface Technology] se grabó entre el 25 y el 27 de Mayo en [2009 Thinking Digital conference]. En el mismo se muestra un poco de lo que está trabajando hoy; pero lo más impresionante es que en los primeros 10 minutos hace un repaso a tecnologías y prototipos que se estuvieron desarrollando durante los pasados 10 años y que han sido la base de artefactos como el Surface, la Wii, etc. Vamos que si estas ideas existían y se podían llevar a cabo en 1992, no quiero pensar con que juguetes jugará Valentino en 10 años.

 

Thinking Digital 2009 Talks: Johnny Chung Lee - Research into Interface Technology from Herb Kim on Vimeo.

 

Algunos detalles:

  • 06:00. La gente de Sony Research en 19999 muestra un ejemplo de trabajo colaborativo entre varias personas en una mesa virtual
  • 07:37. En Microsoft Reseach, el “padre” de la Surface muestra un ejemplo de otra mesa colaborativa para que 2 personas puedan jugar al ajedrez, dibujar, o realizar otras actividades separadas físicamente.
  • 10:30. Si conoces el proyecto Six Sense que presentó la gente del MIT este año, puede ver que hace un par de años alguien se había animado con lo mismo pero colgándose un proyector de varios kilos al cuello.
  • 13:30. Muestra como es posible proyectar imágenes inteligentes sobre superficies que se pueden mover, plegar, etc y como lo proyectado se adapta a la superficie.
  • 14:50. El único proyector 3D que conoce JCL (si él lo dice debe ser cierto)
  • 17:00. Por fin una explicación (y demo) coherente de como funciona la proyección en 3D (ojo al detalle de los 16 proyectores encolados para la demo)
  • 17:59. Flexible Displays …. :D
  • 21:52. Impresionante, con 2 something sujetos a los dedos de una mano; puedes tomar una caja vacia y se simula la sensación de que la misma posee una bola de metal dentro.
  • más …

 

Saludos @ Home Town

El Bruno

Buenas,

en vacaciones aprovecho para juntarme con amigotes, tomar cerveza y comer asaditos; pero no todo es buena vida, también toca sufrir un poco y es por eso que también me doy un poco de sesiones de autotortura con las herramientas de la familia de Expression. Como a la nueva versión no la he probado, decidí que empezar a ver Expression 3 es una buena idea.

Y hace un par de días encontré estos Starter Kits que son realmente muy útiles:

  • Introduction to Prototyping with Sketchflow in Expression Blend 3: Assets, Guide and Video Package
    Discover Sketchflow, a new feature set in Expression Blend 3 that helps you define the concept for user experiences in early stages of the design process. From sketches to wireframes to protoypes of simple or high definition, Sketchflow provides you the right tools to communicate your ideas and gather feedback from others.
  • Venture into Gaming with Behaviors in Expression Blend 3: Assets, Guide and Video Package
    Learn more about how to build a traditional "bricks" game using Expression Blend 3 Behaviors. Simply drag and drop Behaviors over objects in your artboard to easily add powerful and sophisticated functions like animation, physics, interactivity, data connection, effects and more. All without coding. The ever growing Behaviors Gallery at expression.microsoft.com is always avaialable for you to download new behaviors.
  • Discovering SuperPreview in Expression Web 3: Assets, Guide and Video Package
    Learn more about SuperPreview, a new visual diagnostics tool in Expression Web 3. In this Starter Kit you will be provided with detailed guidance on how to leverage SuperPreview to diagnose issues across multiple browser, all with full rendering fidelity and detailed control.
  • Support for Silverlight in Expression Web 3: Assets, Guide, Video Package
    Learn how to leverage the new and easy to use Silverlight support features in Expression Web 3. Then take your websites and publish them to an FTP location without having to leave Expression Web.

Saludos @ Virtually New Home

El Bruno

Fuente: http://blogs.msdn.com/canux/archive/2009/08/12/download-the-expression-3-starter-kits.aspx

Publicado 13/8/2009 23:32 por El Bruno | con no comments
Archivado en:

Buenas,

además de la capacidad de poder organizar jerárquicamente los WorkItems en una consulta, de poder definir el tipo de relación entre 2 WorkItems, de organizar las consultas en directorios, de poder comparar valores entre diferentes campos de un WI y otras novedades más; hoy toca comentar sobre una de las features/características que más se habían pedido en los ultimos tiempos: la capacidad de filtrar en una WorkItem Query un campo basado en un grupo de Active Directory o de Team Foundation Server.

La siguiente imagen muestra la herramienta de edicion de Queries y como podemos filtrar un campo en el que se asignan usuarios para que el mismo esté en un grupo predeterminado:

 image

 

Finalmente comentar que además de la opción de verificar que el valor de un WI esté en un grupo [In Group], también es posible verificar que no esté en un grupo  [Not In Group]

image

 

Saludos @ Cordoba

El Bruno

Buenas,

ya no nos queda nada para el lanzamiento de la Beta 2 de Visual Studio Team System 2010, y un poco más para el lanzamiento de la versión RTM. Y si quieres comenzar a enterarte de las novedades que posee esta versión puedes hacer este recorrido de 3 horas sobre las nuevas capacidades del .Net Framework 4.0, Visual Studio 2010 y ASP.Net 4.0.

Estos son los links con los accesos a los cursos

Saludos @ Cordoba

El Bruno

Fuente: http://blogs.technet.com/uspartner_learning/archive/2009/08/11/visual-studio-2010-technical-training.aspx

Buenas,

además de la capacidad de poder organizar jerárquicamente los WorkItems en una consulta, de poder definir el tipo de relación entre 2 WorkItems, de organizar las consultas en directorios y otras novedades más; una de las que más me ha llamado la atención es que ahora cuando creamos una consulta de WIs, podemos definir criterios basados en los valores de los campos de la misma.

Por ejemplo, la siguiente imagen muestra como en el momento de crear una consulta de WIs, el operador para la comparación de un campo puede estar relacionado con una constante o con otro campo:

image

El editor además es inteligente y al momento de presentarnos los valores posibles con los que comparar, solo nos ofrece aquellos campos definidos en el WorkItem que son del mismo tipo que el campo que queremos comparar (lo compliqué no?)

image

De esta forma, por ejemplo podemos crear una consulta que nos muestre aquellos WorkItems donde el tiempo de trabajo completado sea mayor o igual al tiempo estimado, para identificar desviaciones

image

Interesante feature a la que espero poder sacarle provecho dentro de poco tiempo :D

 

Saludos @ Cordoba

El Bruno

Buenas,

el amigo Jason Barile ha escrito un interesante post donde comenta como conectarse a un servidor Team Foundation Server 2010 desde un cliente Visual Studio 2008 con Team Explorer 2008. Como en 2010 se ha introducido el concepto de Project Collection, que permiten administrar de una forma más simple y eficiente los Team Projects, la url para la conexión ha cambiado versus a la versión 2008.

Por ejemplo, para nos conectarnos a un servidor TFS 2008 desde Visual Studio, simplemente poníamos el nombre del server [VSTS2010BETA1] en la ventana para agregar servidores a nuestro panel Team Explorer:

image

Pero para conectarnos a un server TFS 2010, debemos conocer también la Team Collection donde reside nuestro Team Project, y completar la url completa de la misma con el formato: http://{server name}/tfs/{project collection}

image

Una vez completa esta url, cuando el cliente se conecta ya podemos ver la lista de Team Projects y conectarnos a los mismos de la misma forma como lo hacíamos en TFS 2008.

Bonus Track:

Y alguien quiere conocer las Team Project Collections que pertenecen a un servidor, es posible hacerlo utilizando la herramienta de administración que se incluye en TFS 2010. En la siguiente imagen podemos ver la TPC creada en mi server de demo:

image

Y si queremos conectarnos desde VSTS 2010 podemos ver que la ventana de conexión nos permiten identificar la applicacion IIS que hostea nuestro server tfs (por defecto llamada tfs):

image

y luego, dentro de la misma seleccionar un Team Project Collection y dentro del mismo seleccionar el Team Project correspondiente:

image

 

 

Fuente: http://blogs.msdn.com/jasonba/archive/2009/08/10/how-to-connect-to-a-tfs-2010-server-from-a-2008-team-explorer-client.aspx

Saludos @ Córdoba.com.ar

El Bruno

Beginning ASP.NET MVC 1.0Buenas

mi amigo, compañero de Avanade Italy y MVP de ASP.Net; Simone Chiareta es uno de los coautores de Beginning ASP.Net MVC 1.0; un libro que ya caerá en mis manos cuando vuelva a Madrid.

En este libro se explica como el modelo ASP.NET MVC permite desarrollar aplicaciones Web con mayor rapidez. Este libro da un principal enfoque en la velocidad que nos brinda a los desarrolladores en el nuevo ASP.NET MVC sin la necesidad de tener que reaprender ASP.NET una vez más. Además tiene un par de casos reales de aplicación y muchos ejemplos que ofrecen soluciones prácticas.

Vamos que Simone y el amigote Keyvan Nayyeri se lo han currado. Está disponible en Amazon para comprar desde hace unos días http://www.amazon.com/gp/product/047043399X?ie=UTF8&tag=codec04-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=047043399X; así que ya sabés, si no te queres aburrir este verano, aquí tienes una lectura para apuntar.

 

Saludos @ Cordoba.com.ar

El Bruno

Publicado 9/8/2009 16:13 por El Bruno | con no comments
Archivado en: ,

 

 

Buenas,

cada 2 por 3 me envían un correo con alguna pregunta sobre la implantación de Team System, sobre alguna plantilla de trabajo de TFS o sobre alguna cosilla relacionada con el mundo de la informática. Yo trato de responder siempre, cuando me agarran con poco trabajo la respuesta es en el día, pero en otros casos puedo tardar un poco más. De esta forma he conocido a gente muy interesante que trata de llevar adelante pequeños y grandes proyectos de los que también suelo aprender algo.

Pero, para los casos en los que no conozco la respuesta o tardo semanas en responder, existe un foro en español dentro de los Foros de MSDN dedicado exclusivamente a Team System:

Supongo que si alguien tiene una pregunta sobre TFS, VSS, Visual Studio, Team Project Templates, CheckIn Policies, Extensibilidad de TFS, TFS Build, demos de TFS, Testing con Team System, Web Tests, Reportes de Proyecto, etc.; podrá encontrar la ayuda de muchos expertos en este site. Así que ya sabes, si tienes dudas puedes dejarlas allí !!!

 

Saludos @ La Finca

El Bruno

PD: no lo había publicado, pero esta es una foto de hace un tiempo cuando se habilitaron los foros en español en MSDN. Supongo que conocen al de la foto, ¿no? (increíble lo que uno hace con el tiempo libre en las noches de verano)

image

Buenas,

una de las opciones interesantes que posee ASP.Net 4.0, es la capacidad para definir parte de la información propia de la meta data de una página de una forma más simple. En esta nueva versión se ha incorporado la capacidad de poder trabajar directamente con las Keywords y la Description propia de la META de una página HTML.

Por ejemplo, podemos definir en una página su descripción y sus palabras claves de 2 formas. Con el clásico código ASP.net

<%@ Page Language="C#" Keywords="El Bruno Valentino" Description="Ejemplo de una descripcion" %>

 

o por código C#:

protected void Page_Load(object sender, EventArgs e) 
{ 
  Page.Keywords = "El Bruno Valentino"; 
  Page.Description = "Ejemplo de una descripcion"; 
}

y obtendremos el siguiente resultado en la página generada:

   1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
   2: <html xmlns="http://www.w3.org/1999/xhtml"> 
   3: <head> 
   4: <title></title> 
   5: <meta name="description" content="Ejemplo de una descripcion" />  
   6: <meta name="keywords" content="El Bruno Valentino" /> 
   7: </head>
   8: ...
   9: </html>

 

Un pequeño detalle, pero que puede ayudarnos mucho con la categorización y organización de nuestros websites.

 

Saludos @ Home

El Bruno

Más artículos Página siguiente >