VisualStudio2005.IDE.Reset = True

 Buenas

hay días en que todo nos sale mal, se te pasa el autobus, te cierran en bar de la esquina, o se te desconfigura el Visual Studio. Si se te pasa el autobús, no hay mucho problema porque una vez atrasado lo mejor es hacer tiempo en un bar, pero si cuando llegas está cerrado; ya tienes q empezar a buscar otro … asi que hay q trabajar un poco.

Esos problemas, tienen fácil solución, pero cuando el IDE de Visual Studio 2005 comienza a hacer cosas raras, es mejor tomarselo con calma e ir a alguno de los bares que ya conocemos a tomar una cerveza. De algo de esto nos hablaba el amigo Luis en su blog, y a mi también me ha pasado algo parecido, cuando por ejemplo sigo estos pasos:

  • Instalar Visual Studio 2005
  • Instalar SQL Server 2005
  • Instalar Visual Studio 2005 Team Edition for Data Base Professionals
  • Desinstalar SQL Server 2005
  • Tratar de abrir la ventana de nuevos proyectos de Visual Studio
    • El pedazo de error de componentes, no instalados que recibimos es mas que interesante.
  • Instalar nuevamente SQL Server 2005
  • Tratar de abrir la ventana de nuevos proyectos de Visual Studio
    • Ahora el error es mas parecido a una representación gráfica de Frank Miller que otra cosa … :S

 

Hasta aquí llegamos y ya hemos destruido nuestro IDE de trabajo y no quedan mas cervezas para destilar las penas; y la pregunta es ¿cómo podemos resetear el mismo a su estado original, sin tener que reinstalar todo? La respuesta puede estar en alguno de los modificadores de línea de comando para DevEnv.

La lista completa la podemos ver en http://msdn2.microsoft.com/es-es/library/xee0c8y7(VS.80).aspx y entre las mas interesantes tengo q remarcar:

  • /ResetSettings
    Restaura la configuración predeterminada de Visual Studio. Opcionalmente, restablece la configuración del archivo .vssettings especificado.
  • /ResetUserData
    Esta configuración no esta declarada dentro de la lista de comandos, pero reinicia todas las configuraciones asociadas al usuario.

 

Les dejo el tip, y recuerden que si lo utilizan deberán comenzar a reconfigurar el IDE para las preferencias de cada uno, cosa que siempre es mucho mas útil que no poder trabajar pero menos agradable que salir de cañas con los amigos.

 

Saludos

El Bruno

Crossposting from ElBruno.com

New Mobile UI: Zenzui (no es japones y no usa nunchaku …)

Buenas,

perdón por el Off-Topic pero la verdad es que me ha llamado mucho la atención este video.

 

 

Esta nueva interfaz gráfica de trabajo ha salido de los laboratorios de Microsoft y parece que estará disponible para Mobile (o algo asi).

Es mas sin ir tan lejos, parece que si alguien está interesado en participar en la creación de este nuevo iPhone UI puede aplicar para trabajar en Seattle.

Ya no hay excusas para comprarse un iPhone quejarse, a trabajar a Redmont y a mejorar Mobile.

 

Saludos

El Bruno

 

Fuentes:

Crossposting from ElBruno.com

Feature Pack for Microsoft SQL Server 2005 – February 2007

Buenas,

recién llegado a Barcelona (sumando puntos aéreos como la selección) y mientras sigo son poder instalar el SP2 de SQL Server 2005, por algunos errores en la creación/modificación de Perfomance Counters en Vista; de nuevo la gente de Microsoft me tienta con algunas Features Packs adicionales para Microsoft SQL Server 2005.

Las mismas se pueden descargar desde Feature Pack for Microsoft SQL Server 2005 – February 2007 y contienen los siguientes items:

 

  • Microsoft ADOMD.NET
  • Microsoft Core XML Services (MSXML) 6.0
  • Microsoft OLEDB Provider for DB2
  • Microsoft SQL Server Management Pack for MOM 2005
  • Microsoft SQL Server 2000 PivotTable Services
  • Microsoft SQL Server 2000 DTS Designer Components
  • Microsoft SQL Server Native Client
  • Microsoft SQL Server 2005 Analysis Services 9.0 OLE DB Provider
  • Microsoft SQL Server 2005 Backward Compatibility Components
  • Microsoft SQL Server 2005 Command Line Query Utility
  • Microsoft SQL Server 2005 Datamining Viewer Controls
  • Microsoft SQL Server 2005 JDBC Driver
  • Microsoft SQL Server 2005 Management Objects Collection
  • Microsoft SQL Server 2005 Compact Edition
  • Microsoft SQL Server 2005 Notification Services Client Components
  • Microsoft SQL Server 2005 Upgrade Advisor
  • Microsoft .NET Data Provider for mySAP Business Suite, Preview Version
  • Reporting Add-In for Microsoft Visual Web Developer 2005 Express
  • Microsoft Exception Message Box
  • Data Mining Managed Plug-in Algorithm API for SQL Server 2005
  • Microsoft SQL Server 2005 Reporting Services Add-in for Microsoft SharePoint Technologies
  • Microsoft SQL Server 2005 Data Mining Add-ins for Microsoft Office 2007
  • SQL Server 2005 Performance Dashboard Reports
  • SQL Server 2005 Best Practices Analyzer

 

Sobre algunos ya escribí, como por ejemplo los SQL Server 2005 Data Mining Add-In for Office 2007, pero hay otros que realmente me intrigan como son el Microsoft SQL Server 2005 Best Practices Analyzer y el Microsoft Exception Message Box. Cuando tenga un tiempo y los pruebe, postearé al respecto claro, si no me llego/suicido cervezas y bacalao en los dias siguientes en Lisboa.

Mas detalle como siempre:

 

Instructions

    Download the appropriate file by clicking one of the links below, then run the downloaded file to install that package.
    Each package indicates the audience(s) for which it was intended, as follows:

      Customer: An individual may want to install this for additional licensed functionality such as interoperability.
      Partner: An ISV may want to ship this as a redistributable component as part of their application.
      Developer: A programmer may want to install this to support application development.


    Microsoft ADOMD.NET

      ADOMD.NET is a Microsoft .NET Framework object model that enables software developers to create client-side applications that browse metadata and query data stored in Microsoft SQL Server 2005 Analysis Services. ADOMD.NET is a Microsoft ADO.NET provider with enhancements for online analytical processing (OLAP) and data mining.
      Note: The English ADOMD.Net setup package installs support for all SQL Server 2005 languages.
      Audience(s): Customer, Partner, Developer


    Microsoft Core XML Services (MSXML) 6.0

      Microsoft Core XML Services (MSXML) 6.0 is the latest version of the native XML processing stack. MSXML 6.0 provides standards-conformant implementations of XML 1.0, XML Schema (XSD) 1.0, XPath 1.0, and XSLT 1.0. In addition, it offers 64-bit support, increased security for working with untrusted XML data, and improved reliability over previous versions of MSXML.
      Audience(s): Partner, Developer


    Microsoft OLEDB Provider for DB2

      The Microsoft OLE DB Provider for DB2 is a COM component for integrating vital data stored in IBM DB2 databases with new solutions based on Microsoft SQL Server 2005 Enterprise Edition and Developer Edition. SQL Server developers and administrators can use the provider with Integration Services, Analysis Services, Replication, Reporting Services, and Distributed Query Processor. Run the self-extracting download package to create an installation folder. The single setup program will install the provider and tools on x86, x64, and IA64 computers. The package includes product updates in the form of an integrated Service Pack 1. Read the installation guide and Readme for more information.
      Audience(s): Customer, Developer


    Microsoft SQL Server Management Pack for MOM 2005

      The Microsoft SQL Server Management Pack enables you to monitor SQL Server 2005 and SQL Server 2000 in an enterprise environment. Included are enterprise-level capabilities to monitor resource availability and configuration, collect performance data, and test default thresholds. Local and remote connectivity checks help ensure database availability.
      With the embedded expertise in the SQL Server Management Pack, you can identify issues and manage issues before they become critical. This Management Pack increases the security, availability, and performance of your SQL Server infrastructure.
      The Microsoft SQL Server Management Pack Guide that is included describes the content of the management pack and how to deploy it.
      Audience(s): Customer


    Microsoft SQL Server 2000 PivotTable Services

      PivotTable Services 8.0 is the OLE DB provider for SQL Server 2000 Analysis Services and is used to connect with an Analysis Services 2000 server. PivotTable Services does not work with SQL Server 2005 Analysis Services. Therefore, client applications that need connect to Analysis Services in both SQL Server 2000 and SQL Sever 2005 will need to install both PivotTable Services 8.0 and Analysis Services 9.0 OLE DB Provider in a side-by-side configuration.
      Audience(s): Customer, Partner, Developer


    Microsoft SQL Server 2000 DTS Designer Components

      The Microsoft SQL Server 2000 Data Transformation Services (DTS) package designer is a design tool used by developers and administrators of SQL Server 2005 servers to edit and maintain existing DTS packages until they can be upgraded or recreated in the SQL Server 2005 Integration Services package format. After installing this download, SQL Server 2005 users can continue to edit and maintain existing DTS packages from the Object Explorer in SQL Server 2005 Management Studio and from the Execute DTS 2000 Package Task Editor in Business Intelligence Development Studio, without needing to reinstall the SQL Server 2000 tools. The DTS package designer in this download was formerly accessed from the Data Transformation Services node in SQL Server 2000 Enterprise Manager.
      Audience(s): Customer, Developer


    Microsoft SQL Server Native Client

      Microsoft SQL Server Native Client (SQL Native Client) is a single dynamic-link library (DLL) containing both the SQL OLE DB provider and SQL ODBC driver. It contains run-time support for applications using native-code APIs (ODBC, OLE DB and ADO) to connect to Microsoft SQL Server 7.0, 2000 or 2005. SQL Native Client should be used to create new applications or enhance existing applications that need to take advantage of new SQL Server 2005 features. This redistributable installer for SQL Native Client installs the client components needed during run time to take advantage of new SQL Server 2005 features, and optionally installs the header files needed to develop an application that uses the SQL Native Client API.
      Audience(s): Partner, Developer


    Microsoft SQL Server 2005 Analysis Services 9.0 OLE DB Provider

      The Analysis Services 9.0 OLE DB Provider is a COM component that software developers can use to create client-side applications that browse metadata and query data stored in Microsoft SQL Server 2005 Analysis Services. This provider implements both the OLE DB specification and the specification’s extensions for online analytical processing (OLAP) and data mining.
      Note: Microsoft SQL Server 2005 Analysis Services 9.0 OLE DB Provider requires Microsoft Core XML Services (MSXML) 6.0, also available on this page.
      Audience(s): Customer, Partner, Developer


    Microsoft SQL Server 2005 Backward Compatibility Components

      The SQL Server Backward Compatibility package includes the latest versions of Data Transformation Services 2000 runtime (DTS), SQL Distributed Management Objects (SQL-DMO), Decision Support Objects (DSO), and SQL Virtual Device Interface (SQLVDI). These versions have been updated for compatibility with SQL Server 2005 and include all fixes shipped through SQL Server 2000 SP4.
      Audience(s): Customer, Partner, Developer


    Microsoft SQL Server 2005 Command Line Query Utility

      The SQLCMD utility allows users to connect, send Transact-SQL batches, and output rowset information from SQL Server 7.0, SQL Server 2000, and SQL Server 2005 instances. SQLCMD is a replacement for ISQL and OSQL, but can coexist with installations that have ISQL or OSQL installed.
      Note: Microsoft SQL Server 2005 Command Line Query Utility requires Microsoft SQL Server Native Client, also available on this page.
      Audience(s): Customer, Partner, Developer


    Microsoft SQL Server 2005 Datamining Viewer Controls

      The Data Mining Web Controls Library is a set of Microsoft Windows Forms controls that enable software developers to display data mining models created using Microsoft SQL Server 2005 Analysis Services in their client-side applications. The controls in this library display the patterns that are contained in Analysis Services mining models.
      Note: Microsoft SQL Server 2005 Datamining Viewer Controls requires Microsoft SQL Server 2005 Analysis Services 9.0 OLE DB Provider and Microsoft ADOMD.NET, also available on this page.
      Audience(s): Partner, Developer


    Microsoft SQL Server 2005 JDBC Driver

      In its continued commitment to interoperability, Microsoft has released and supports a new Java Database Connectivity (JDBC) driver for SQL Server 2005. The SQL Server 2005 JDBC Driver download is available to all SQL Server users at no additional charge and provides access to SQL Server 2000 and SQL Server 2005 from any Java application, application server, or Java-enabled applet. This is a Type 4 JDBC driver that provides database connectivity through the standard JDBC application programming interfaces (APIs) available in J2EE (Java2 Enterprise Edition).
      Audience(s): Partner, Developer


    Microsoft SQL Server 2005 Management Objects Collection

      The Management Objects Collection package includes several key elements of the SQL Server 2005 management API, including Analysis Management Objects (AMO), Replication Management Objects (RMO), and SQL Server Management Objects (SMO). Developers and DBAs can use these components to programmatically manage SQL Server 2005.
      Note: Microsoft SQL Server 2005 Management Objects Collection requires Microsoft Core XML Services (MSXML) 6.0 and Microsoft SQL Server Native Client, also available on this page.
      Audience(s): Customer, Partner, Developer



    Microsoft SQL Server 2005 Compact Edition

      Microsoft SQL Server 2005 Compact Edition is the next version of SQL Server Mobile adding the desktop platform. SQL Server Compact extends the SQL Server Mobile technology by offering a low maintenance, compact embedded database for single-user client applications for all Windows platforms including tablet PCs, pocket PCs, smart phones and desktops. Just as with SQL Server Mobile, SQL Server Compact is a free, easy-to-use, lightweight, and embeddable version of SQL Server 2005 for developing desktop and mobile applications.
      Audience(s): Customer, Partner, Developer


    Microsoft SQL Server 2005 Notification Services Client Components

      The SQL Server 2005 Notification Services Client Components package provides client APIs that enable subscription management and event submission within custom applications that include SQL Server 2005 Notification Services functionality. The subscription management APIs allow developers to create subscriptions and subscribers, and manage subscriber devices. The event submission APIs allow users to specify events using the event APIs or stored procedures.
      Audience(s): Partner


    Microsoft SQL Server 2005 Upgrade Advisor

      Upgrade Advisor analyzes instances of SQL Server 7.0 and SQL Server 2000 in preparation for upgrading to SQL Server 2005. Upgrade Advisor identifies deprecated features and configuration changes that might affect your upgrade, and it provides links to documentation that describes each identified issue and how to resolve it.
      Audience(s): Customer, Developer


    Microsoft .NET Data Provider for mySAP Business Suite, Preview Version

      SQL Server 2005 includes support for accessing SAP data by using the Microsoft .NET Data Provider for mySAP Business Suite. This provider lets you create an Integration Services package that can connect to a mySAP Business Suite solution and then execute commands to access data via supported interfaces. You can also create Reporting Services reports against a server running the mySAP Business Suite.
      You can use the Microsoft .NET Data Provider for mySAP Business Suite in the SQL Server Import and Export Wizard and in various Integration Services features (including the Script task, the DataReader Source component, and the Script component), as well as the data processing extensions in Reporting Services.
      The Microsoft .NET Data Provider for mySAP Business Suite is not included in SQL Server 2005. The preview version is licensed as pre-release software as outlined in the License Terms. See the Readme included with the download for information on the prerequisites for using the Microsoft .NET Data Provider for mySAP Business Suite.
      Audience(s): Customer, Partner, Developer


    Reporting Add-In for Microsoft Visual Web Developer 2005 Express

      The Reporting Add-In for Microsoft Visual Web Developer 2005 Express includes a ReportViewer control, an integrated report designer, and a comprehensive API that lets you customize run-time functionality. You can use the control to add interactive real-time data reports to your ASP.NET Web applications. Reports can use data from any ADO.NET DataTable or custom Business object. You can create reports that combine tabular, matrix, and visual data in free-form or traditional report layouts. An integrated report designer is included so that you can create the custom reports that bind to the control.
      The Reporting Add-In is the same reporting component that is included with other editions of Visual Studio, but without support for Windows Forms applications. For more information including product documentation and samples, see the
      ReportViewer Controls (Visual Studio) topic on MSDN.
      Audience(s): Developer

        X86 Package (SQLServer2005_ReportAddin.msi) – 5173 KB


    Microsoft Exception Message Box

      The exception message box is a programmatic interface that you can use in your applications for any tasks for which MessageBox may be used. The exception message box is a supported managed assembly designed to elegantly handle managed code exceptions. It provides significantly more control over the messaging experience and gives your users the options to save error message content for later reference and to get help on messages.
      Audience(s): Developer


    Data Mining Managed Plug-in Algorithm API for SQL Server 2005

      The Managed Plug-in API is a Microsoft .NET object model that enables software developers to create plug-in data mining algorithms for SQL Server 2005 by using CLI-compliant languages, such as Visual C# 2.0. The object model is available as source code and it needs to be built on the developer’s computer. The package includes a step-by-step tutorial, a compiled HTML help file (.chm), as well as a sample plug-in algorithm developed in C#.
      Audience(s): Partner, Developer


    Microsoft SQL Server 2005 Reporting Services Add-in for Microsoft SharePoint Technologies

      Microsoft SQL Server 2005 Reporting Services Add-in for SharePoint Technologies allows you to take advantage of SQL Server 2005 Service Pack 2 (SP2) report processing and management capabilities in SharePoint. The download provides a Report Viewer web part, web application pages, and support for using standard Windows SharePoint Services.
      Audience(s): Customer, Partner, Developer


    Microsoft SQL Server 2005 Data Mining Add-ins for Microsoft Office 2007

      Microsoft SQL Server 2005 Data Mining Add-ins for Microsoft Office 2007 allow you take advantage of SQL Server 2005 predictive analytics in Office Excel 2007 and Office Visio 2007. The download includes Table Analysis Tools for Excel, Data Mining Client for Excel, and Data Mining Templates for Visio.
      Audience(s): Customer, Partner, Developer


    SQL Server 2005 Performance Dashboard Reports

      The Microsoft SQL Server 2005 Performance Dashboard Reports are a set of Reporting Services report files that run within SQL Server 2005 SP2 Management Studio and later versions. These reports let SQL Server users more easily identify when a performance problem is occurring, and to identify the most likely cause. If more assistance is needed, the administrator can accurately describe the problem to technical support. This results in faster problem resolution.
      Audience(s): Customer, Developer


    SQL Server 2005 Best Practices Analyzer

      The SQL Server 2005 Best Practices Analyzer (BPA) gathers data from Microsoft Windows and SQL Server configuration settings. BPA uses a predefined list of SQL Server 2005 recommendations and best practices to determine if there are potential issues in the database environment.
      Audience(s): Customer

 

Saludos

El Bruno

 

PD: el de la foto parece que es el héroe local de Alemania para SQL Server 2005 😀

Crossposting from ElBruno.com

No todo es lo que parece

Buenas

pues si, en la informática no todo es lo que parece. Por ejemplo, existen personas que frente a un error inhumano/catastrófico/destrastrozo/demencial del que dependen la vida de millones de personas en algún lugar del mundo, directamente se tiran de cabeza al código y lo primero que quieren hacer es comenzar a depurar la solución (I want to eat code, I want to eat code !!!).

Mi gran amigo “el sentido común” frente a estas situaciones, me obliga a cuestionarme puntos como por ejemplo, ¿esto funcionaba y dejó de funcionar? ¿o tal vez nunca funcionó?; porque la mayoría de las veces, cuando es algo que de repente dejó de funcionar, la solución no suele estar en el código. Lo mas probable, es que alguna configuración se haya perdido, algún Service Pack u Hot Fix actualice algo que se nos escape, etc  … y lo que en un principio parecía un error se convierte en un pequeño permiso que se eliminó por error.

Repito –> no todo es lo que parece (y mucho menos un sábado, como bien demuestran los recuerdos de noches muy largas q terminan en resultados catastróficos, o no 😛)

 

Saludos

El Bruno

 

PD: la imagen como ejemplo es impresionante, pero mas impresionante es la nueva publicidad de Voll-Damm

 

Crossposting from ElBruno.com

Team Foundation Server desde PowerBuilder (durmiendo con el enemigo, pero durmiendo lo mas comodo posible …)

Buenas

han pasado varios meses desde que hablé de las herramientas necesarias / metodología para la migración de Visual Source Safe a Team Foundation Server. Una de las imprescindibles era Visual Studio 2005 Team Foundation Server MSSCCI Provider, que permite la integración de los siguientes productos para trabajar con Team Foundation Server

  • Visual Studio .NET 2003
  • Visual C++ 6 SP6
  • Visual Visual Basic 6 SP6
  • Visual FoxPro 9 SP1
  • Microsoft Access 2003 SP2
  • SQL Server Management Studio
  • Sparx Systems Enterprise Architect 6.0
  • Sybase PowerBuilder 10.5

Pues bien, después de plagiarme como algunos periódicos online llega el momento de participar en un marrón proyecto que utiliza parte en PowerBuilder 10.5. Creo que no hace falta que entre en detalle sobre las virtudes que posee TFS y mas aún si podemos integrar dentro de nuestro ciclo de vida de desarrollo, equipos de otras herramientas como pueden ser desarrolladores de PowerBuilder.

Aqui en este punto la pregunta fué;

¿la integración con TFS es sólo un nuevo gestor de versiones de código fuente?

Y cómo bien he aprendido, en lugar de responder con toda la teoría al respecto, prefiero armar una pequeña demo mostrando las ventajas de Team Foundation Server y PowerBuilder.

 

Team Explorer, MSSCCI Provider y PowerBuilder

Lo primero que debemos hacer es instalar en las máquinas de desarrollo de PB, el cliente Team Explorer y el VSTFS MSSCCI Provider. A partir de este momento ya podremos comenzar a trabajar desde el IDE de PB con nuestro estimado Team Foundation Server.

 

Ejemplo paso a paso

Por ejemplo a partir de un nuevo Workspace o uno ya existente debemos seguir estos pasos:

 

  1. Sobre las propiedades del Workspace seleccionamos la pestaña “Source Control” y dentro de la misma seleccionamos el provider Microsoft Team Foundation Server MCCSSI.

  2. A continuación seleccionamos el Team Project con el que queremos trabajar (ademas de seleccionar el servidor de TFS correspondiente). Esta selección se realiza con las ventanas de seleccion propias de Team Explorer. Para este ejemplo, como los ejemplos del Workspace trabajan contra la base de datos de AdventureWorks, seleccionaré un Team Project llamado AdventureWorks.

  3. Una vez asociado el Workspace con el Team Project, podremos ver que en cada uno de los items del Workspace tenemos las opciones de interacción con TFS.

  4. Cuando seleccionamos la opcion Add to Source Control, debemos completar las opciones propias de TFS asociadas a este proyecto. Además si queremos, a partir de este instante podemos asociar cada una de estas opciones con WorkItems de TFS.

  5. Dentro de Visual Studio, en el Source Control Explorer podremos ver los archivos propios del Workspace de Powerbuilder que hemos agregado en el paso anterior.

  6. Nuevamente dentro del IDE de Powerbuilder, si queremos realizar un Check Out de algun elemento del Workspace, podremos ver que en las opciones avanzadas de Check Out tenemos las opciones de Lock: Shared Checkout, Check In y Check Out.

  7. Una vez realizadas algunas modificaciones en la DataWindow dw_adv_employee, y después de hacer CheckIn de las mismas; podremos ver en el histórico las diferentes versiones que se han generado.

  8. Finalmente podremos realizar una comparación entre estas versiones para ver las diferencias entre las mismas

  9. Finalmente si hemos asociado nuestros cambios de codigo a WorkItems asignados a nuestro usuario de TFS, podremos ver en el detalle de los WorkItems, la historia de cambios que han sufrido esta tarea y como ha evolucionado durante el tiempo

  10. Otro ejemplo mas, sobre el WorkItem cerrado los Changesets asociados

 

Conclusión

Partiendo de este simple ejemplo, puedo enunciar:

  • Es importante conocer las opciones de integración del conector MSSCCI, ya que utilizando el mismo podemos agregar herramientas adicionales a Visual Studio al ciclo de vida de desarrollo que manejamos con Team Foundation Server
  • Utilizando este conector y Team Foundation Server; una vez más queda reforzada la capacidad de interacción entre equipos multidisciplinarios de TFS. Pensemos que a traves de TFS se puede lograr la colaboración e interacción de diferentes equipos utilizando una misma metodología.
  • La metodología de desarrollo tal vez es nueva para los desarrolladores de PB (en este caso), pero la herramienta sigue siendo la misma; por lo que la curva de adaptación es muy leve.
  • A q mola, ¿no?

 

Saludos

El Bruno

 

PD: despues hablaré si puedo sobre las posibilidades de integracion de aplicaciones entre Powerbuilder y .Net, aunq creo q hay un NDA de por medio.

Crossposting from ElBruno.com

Las Virtual Machines disponibles del MSDN (te ahorras un poco de tiempo, o no … )

Buenas

yo se que todo el mundo, tiene su set / colección / array de máquinas virtuales para demos / pruebas / desarrollo / producción con las que enfrentan todos sus problemas del día a día problemas hasta las 18:30 a partir de allí la solución es unas margaritas en alguna playa tropical.

Como yo soy un campeón, de repente necesito algo muy básico y me encuentro con que no tengo ni siquiera un W2003 simplón para largar de ahí con la configuración que “I need”. Entonces recuerdo que existían varias VMs disponibles para los suscriptores de MSDN y pensé a ahorrarse tiempo Bruno!!

 

 

Pues bien, si lo que deseas es una VM para AHORA !!! mejor q se la pidas a alguien, porque son pesaditas (hablamos de GBs) y claro, eso no se baja en 1 seg.

Si como yo, te acuestas con una resaca impresionante inquietud y te levantas con menos GBs en el disco, pero con una VM a la q solo le falta activarla; las del MSDN son una opción más que interesante. Lo dicho, 5 min de descompresión y un ISA Server 2006 instaladito, ¿un show, no?

 

Saludos

El Bruno

 

PD: por favor, un poco de conciencia social y no hagamos como un par de amigos que se bajan estos GBs utilizando “gratis” el wifi de algún vecino incauto, que no sabe porq su conexión se pone un poco mas lenta, cuando hay un par de File Transfer Manager descargándose todo internet 😀 a través de las mismas.

Crossposting from ElBruno.com

FoxPro … a partir de ahora, es de todos (como el derecho a replica o a conquistar el mundo)

Buenas

esta imagen es la última imagen oficial de Visual FoxPro que veremos por parte de Microsoft. A partir de ahora, no se liberarán nuevas versiones de Fox posteriores a la 9.0, aunque se continuará dando soporte hasta el año 2015. Para las evoluciones de Fox se pasará el proyecto completo a CodePlex para que la comunidad de desarrolladores se encargué de continuar con las evoluciones del mismo.

¿Qué pensarán personas que desde hace mas de 10 años utilizan uno de los mejores RAD que han existido?, pues no sé, pero recuerdo los días en que los desarrolladores Visual Basic 6 envidiábamos a los desarrolladores de Fox, por algo tan simple como la herencia. Visual Fox 6 no tenía intellisense, no estaba tan preparado para generar com, pero era orientado a objetos, algo que personalmente en mis comienzos me apasionaba. Con la llegada de Visual Studio .Net, las cosas se emparejaron y Microsoft decidió seguir evolucionando Fox paralelamente a .Net hasta el día de hoy.

Pues bien, adios a un grande (o eso creo, ya que una comunidad libre evolucionando un producto que seguramente será comparado con un animal del desarrollo como Visual Studio, mal lo veo.)

 

Saludos

El Bruno

 

Fuente: http://www.eweek.com/article2/0,1895,2103695,00.asp

Crossposting from ElBruno.com

LEGO + Wireless WebCam + .Net = finalmente todo junto (… tiembla Optimus Prime !!)

Buenas,


desde hace unos meses vengo posteando sobre el dinero que malgasto en chorradas mis juguetes/hobbies: LEGO Mindstorm, WirelessWebCam, Business Intelligence,etc., sin embargo todavía no había tenido tiempo de “orquestar” todos los componentes en una única solución.


Mi idea original era:



  • integrar la webcam y el bot
  • aprovechar alguna de las librerías que me permiten interactuar con el LEGO Mindstorm para controlar el mismo; sin cables
  • diseñar y crear un cliente que obtenga las imágenes de la webcam, para mostrarlas en tiempo real (lo mas cercano a tiempo real posible); sin cables
  • diseñar y crear un repositorio donde registrar todos los movimientos del bot, asi como las imagenes que se obtienen de la webcam
  • diseñar y crear un cliente que me permita reproducir en un entorno visual el histórico de movimientos e imágenes de una sesión con el Lego

Pues después de robarme un par de horas de sueño, finalmente me animé con la siguiente propuesta:



 Y empece a desglosar las partes y las tareas en …


 


LEGO + WebCam


La primera tarea fue bastante simple, debido a que estoy limitado a las piezas actuales que poseo del Lego. Tuve mis dudas sobre si montar la “cpu” del Lego por detrás o por encima de la webcam (estorbaba la antena) pero finalmente decidí montarla arriba del mismo.


Para ver el resultado lo mejor que puedo hacer es dejar un par de imágenes para que vean el bot final (click sobre las mismas para ampliar la imagen): 


Free Image Hosting at www.ImageShack.us Free Image Hosting at www.ImageShack.us Free Image Hosting at www.ImageShack.us Free Image Hosting at www.ImageShack.us


 


VB.Net / Lego / Wireless WebCam


Simplemente me hice referencia a mi mismo, a anteriores posts, Lego y .Net, WebCam y .Net, ya escribí un par de veces sobre como acceder y manejar los servicios del bot (utilizando Microsoft Robotics Studio o Nxt# – Mindstorms for .Net) y además cómo implementar un cliente para obtener las imágenes de la webcam utilizando algunas features de System.Net.WebClient.


Era necesario desarrollar un par de interfaces visuales para poder integrar toda la solución. Una de ellas que permita controlar el bot y la siguiente que permita visualizar el histórico:


 


Free Image Hosting at www.ImageShack.us Free Image Hosting at www.ImageShack.us


El primer tab permite controlar los movimientos del bot y ver en tiempo casi real las imágenes que muestra la cámara montada sobre el mismo. La 2da pestaña (o 2do tab) repite el historico de movimientos realizados por el lego, mostrando la dirección en la que se estaba moviendo y las imágenes que se capturaron con la webcam. (al final un video de demo 😀)


 


Lego History Repository


En este escenario, apliqué un principio por el que me guío siempre: “cuando más simple, mejor“. En mi base de datos sólo poseo una tabla RobotHistory donde registro las acciones que realiza el bot y ademas he creado 3 procedimientos almacenados para trabajar con los datos de la misma, AddHistory, ClearHistory y GetHistory. (los nombres de los SPs lo dicen todo ¿no?)


Estos son los campos de la tabla RobotHistory:



  • HistoryId representa el id autonumérico
  • HistoryDate almacena la fecha y hora de la acción
  • HistoryAction representa el tipo de acción
  • MoveDescription un string para mejorar la experiencia del usuario en la vista del histórico
  • WebCamImage un campo del tipo image para almacenar las imágenes que se obtienen de la WebCam.

 Free Image Hosting at www.ImageShack.us


 


Para interactuar con los procedimientos almacenados y para ahorrarme un par de líneas de desarrollo, utilice el módulo de acceso a datos de Enterprise Library.  Por ejemplo para invocar el siguiente procedimiendo almacenado que inserta un registro en el histórico de movimientos:


ALTER PROCEDURE [dbo].[AddHistory]
(
@HistoryAction int = 0,
@MoveDescription varchar(250) = ,
@WebCamImage image = null
)
AS
BEGIN
SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;

Insert Values
INSERT INTO RobotHistory
(HistoryAction, MoveDescription, WebCamImage)
VALUES
(
@HistoryAction, @MoveDescription, @WebCamImage)

Return Id
SELECT @@Identity as HistoryId

END


 


implementé un código vb.net que crea 2 sobrecargas sobre una misma función AddHistory, para poder recibir los datos necesarios para el SP y opcionalmente una imagen o el array de bytes que corresponde a esa imagen:


” <summary>
” Adds the history.
” </summary>
” <param name=”HistoryAction”>The history action.</param>
” <param name=”MoveDescription”>The move description.</param>
” <param name=”WebCamPic”>The web cam pic.</param>
” <returns></returns>
Public Shared Function AddHistory(ByVal HistoryAction As DataActions, ByVal MoveDescription As String, Optional ByVal WebCamPic As System.Drawing.Bitmap = Nothing) As Integer
Dim ms As New IO.MemoryStream
If Not WebCamPic Is Nothing Then
WebCamPic.Save(ms, Drawing.Imaging.ImageFormat.Bmp)
End If
Return AddHistory(HistoryAction, MoveDescription, ms.GetBuffer())
End Function

” <summary>
” Adds the history.
” </summary>
” <param name=”HistoryAction”>The history action.</param>
” <param name=”MoveDescription”>The move description.</param>
” <param name=”WebCamPic”>The web cam pic.</param>
” <returns></returns>
Public Shared Function AddHistory(ByVal HistoryAction As DataActions, ByVal MoveDescription As String, ByVal WebCamPic() As Byte) As Integer
Dim db As Microsoft.Practices.EnterpriseLibrary.Data.Database = DatabaseFactory.CreateDatabase()
Dim ds As DataSet = db.ExecuteDataSet(AddHistory, HistoryAction, MoveDescription, WebCamPic)
Return ds.Tables(0).Rows(0)(0)
End Function


 


Para identificar todas las acciones posibles que se podian realizar, trabajé con una enumeración bastante simple que representa los valores que se registrarán en la base de datos y me permitirán consultar el historial de movimientos e imágenes del bot.


 


Public Enum DataActions As Integer
GoFoward_ButtonClick
GoFoward_ButtonDown
GoFoward_ButtonUp
GoBackward_ButtonClick
GoBackward_ButtonDown
GoBackward_ButtonUp
TurnLeft_ButtonClick
TurnLeft_ButtonDown
TurnLeft_ButtonUp
TurnRight_ButtonClick
TurnRight_ButtonDown
TurnRight_ButtonUp
Stop_ButtonClick
Stop_ButtonDown
Stop_ButtonUp
Save_Movie
End Enum

 


 


Bot in action !!!


Pues una vez que he ensamblado todas las partes, solo me queda poner todo en acción y tratar de no olvidarme el bot fuera porque los gatitos lo destruyen. A continuación comparto 2 videos con la captura de la aplicación en ejecución, donde se puede ver como se controla y se ven las imágenes del bot y además otro video con la filmación del bot en vivo respondiendo a las acciones que le envío. (si estás trabajando con una buena conexion a internet, aconsejo poner play en ambos videos al mismo tiempo y pueden ver la escena casi en simultáneo)



App in action



Video: LegoWithWebCam


 


 


 


Live Bot (versión Youtube disponible aquí)



Video: LegoWithWebCamLive


Para finalizar, simplemente comentar que desde hace mucho no me divertía tanto como con el Lego Mindstorm y con algún que otro gadget que tengo por ahi. Es cada vez más fácil lograr integrar todos estos productitos (aunque sea para una chorrada divertida como este post) y gracias a estos pequeños retos personales, nos podemos dar el lujo de aprender un poco de tecnologías que aunque parece imposible, tal vez apliquemos en los proyectos donde nos encontremos.


El código fuente completo de la solución se puede descargar desde aquí (gracias geeks again) y en futuros posts explicaré como hice el módulo que repite el histórico del bot y como llevar esta solución completa a Microsoft Robotics Studio.


 


Saludos


El Bruno


PD: despues de mostrarselo a un amigo, ya me ha empezado a sugerir cambios y modificaciones que refuerzan la frase “nada es imposible para la persona que no tiene que hacerlo“; ¿estará relacionado con el cargo de brown dispatcher que ejerce este amigote? jejeje 😀

Crossposting from ElBruno.com

Algunos numeros de Microsoft (como llegar desde Windows 3.11 a Vista, con 2 oceanos de Coca Cola)

 Buenas

obviamente no hablaré de información financiera relacionada con Microsoft, sino de algunos detalles mas que interesantes que encontré aqui. Como por ejemplo:

 

… Hoy he conseguido hacerme con una colección de datos completamente prescindibles sobre Microsoft. Redmond es la sede de la empresa, una pequeña ciudad que vive y respira porque en ella trabajan unos 30.000 empleados de la compañía de Bill Gates. Comparten 2.600.000 metros cuadrados de edificios y oficinas y todos los empleados tienen, además de gimnasio y áreas deportivas, bebidas gratuitas durante la jornada de trabajo. ¿En qué se traduce esto? Atentos a esta pequeña colección de pornografía estadística para amantes de lo “geek”:

Cada año los empleados consumen 7.233.984 latas de refresco. La marca preferida es Cocacola Light. La marca menos deseada es Pepsi Light sin cafeína.

Se bebe mucha agua, sobre todo con sabores. Cada año se consumen 3.774.264 botellas de agua Talking Rain. El sabor preferido es de lima-limón, aunque le sigue en popularidad el agua mineral común.

Quienes programan el código fuente de Windows también se rinden a los encantos de la leche. Beben 3.587.208 cartones cada 365 días. La mayoría la emplean en el café. Cada semana se sirven más de 10.000 tazas de café con leche.

Completan el capítulo de alimentación 2.116.150 bolsas de té al año y 3.721.968 latas de zumo. ¿Para comer? Bueno, hay varias cafeterías repartidas por el campus de la compañía —22- y en ellas se sirven todo tipo de platos, desde pasta hasta sushi. Por poner un ejemplo cada día se hacen 1.833 sandwiches.

Y para los fetichistas de los datos de la vida en la oficina aquí van dos revelaciones más, regalo de la casa:

Los servicios de reprografía realizan 30.586.014 copias A4 al año, suficientes para dar tres veces la vuelta al mundo si las ponemos una detrás de otra.

Se reciben 24.937 solicitudes de salas de reunión al mes.

Y un último dato antes de despedirme:

Una copia de Windows Vista Ultimate Edition ronda en el mercado los 600 euros. En la tienda del empleado de Microsoft cuesta unos 40 euros pero, claro, hay que trabajar allí para aprovecharse de la rebaja. —como curiosidad, una copia de Windows XP cuesta 30 euros-.

 

Curioso ¿no?

 

Saludos

El Bruno

Crossposting from ElBruno.com

Ms Research: Visualization Componentes, otra forma de presentar la informacion ( veo doble :X )

15 Year Anniversary

 

Buenas

es altamente recomendable no tratar de afeitarse con un sable laser jedi darse una vuelta cada tanto por Microsoft Research. Estan en época festiva (cumplen 15 años) y entre las cosas interesantes que encontré, me llamó mucho la atención Community Technologies Visualization Components.

Este set de componentes visuales para .Net se puede descargar desde http://research.microsoft.com/research/downloads/Details/dda33e92-f0e8-4961-baaa-98160a006c27/Details.aspx y contiene los siguientes ejemplos:

 

  • BubbleChartGenerator BubbleChartControl
  •  

  • PianoRollControl
  • SpireChartGenerator SpireChartControl 
  •  

  • ThreadTreeGenerator ThreadTreeControl ThreadTreeScrollBar 
  • TimeSeriesChartGenerator TimeSeriesChartControl 
  • TreemapGenerator TreemapControl 

Los ejemplos son bastante interesantes, y especialmente me llamó la atención las capacidades gráficas del BubbleChart y me resultó fascinante el nuevo Treeview. A ver en que proyecto colamos estos componentes 😉

 

Saludos

El Bruno

Crossposting from ElBruno.com