en

AndorraDotNet

Comunitat d'usuaris .NET del pais dels pirineus

cdani

  • Dev_camp 2008

    El fin de semana del 8 y 9 de noviembre de 2008 se ha realizado en el hotel Tryp de Guadalajara el Microsoft Devcamp orientado a desarrolladores, profesores y estudiantes, haciéndose algunas presentaciones compartidas y otras separadas para dichos grupos.

    Aquí detallo las compartidas y las de desarrolladores.

     

     

    Introducción

     

     

    Diseño de interacción

     

     

    Sobre el análisis de las soluciones que haya que crear, explicó que la realidad de las personas es distinta a lo que dicen ya sea por comodidad a la hora de expresarse o por la dificultad de transformar su concepto en lenguaje, por lo que es difícil saber las necesidades óptimas.

    Explicó el circuito investigación -> análisis ->prototipado ->investigación -> etc. donde puede empezarse por cualquiera de los tres puntos e independientemente del estado del proyecto, aunque obviamente es mejor hacerlo al principio.

    En el tema del uso de los programas habló de los incentivos para realizar las tareas, de la necesaria obtención de feedback de los usuarios, de los tipos de usuarios, etc.

    Actualmente los usuarios tienden a usar inicialmente un buscador si este está disponible, por lo que de existir es importante que esté optimizado también para las acciones más sencillas como por ejemplo registrarse en una web, puesto que es habitual el no ver por ejemplo un botón al respecto que pudiera haber en una página principal.

    Una máxima genérica es “lo usable es lo que se usa más”.

     

     

    Depuración avanzada

     

     

     

    Explicó herramientas y mostró ejemplos con windbg de depuración fuera del entorno de desarrollo.

    Dos circunstancias habituales son el análisis de un volcado de memoria posterior a una excepción crítica y el adjuntarse a una aplicación que se está ejecutando para poder evaluar qué está haciendo, por ejemplo en casos de bajo rendimiento.

    Para en análisis de los programas propios de Microsoft, este pone a disposición de los técnicos unas librerías de símbolos para cada versión de cada uno de sus programas para poder interpretar mejor lo ocurrido, y por supuesto podemos generar esas librerías para nuestras aplicaciones.

     

     

    Presentaciones en público

     

    Inicialmente es necesario definir el mensaje y simplificarlo en forma de titular.

    Hay que analizar la estructura que se va a seguir para crear un hilo coherente que permita encadenar las distintas ideas presentadas.

    Es importante así mismo crear interés en lo que se va a decir a continuación, por ejemplo con cambios de ritmo, con pausas falsas pensadas para crear expectativa, amenizar con cosas divertidas, etc., y esto es más necesario cuanta más gente asista a la presentación.

    Hay que adaptar el nivel de detalle según el tipo de audiencia al que va dirigido el mensaje.

     

     

    Channel 9

     

    Channel 9, un conocido portal de Microsoft orientado al intercambio de información con sus clientes, ya tiene versión española:

    http://channel9.msdn.com/spain/

     

     

    Novedades en el PDC 2008 de Microsoft

    http://www.microsoftpdc.com/

    Ver “Watch PDC session recordings

     

    Se resumieron algunas de las numerosísimas novedades:

     

    C#4 – VB 10

     

     

     

    Ambos finalmente convergen en funcionalidades por lo que la elección de uno de ellos no limitará el desarrollo que quiera llevarse a cabo.

    En c# se han añadido los parámetros opcionales y nombrados, la covarianza y contravarianza en interfaces y delegados, mejoras en la interoperabilidad con Com y el tipado dinámico. También Visual Basic obtiene lo que no tenía de C#.

     

    Se incluye la nueva tecnología Parallels, la cual está pensada para simplificar la ejecución en paralelo de diferentes tipos de tareas aprovechando los múltiples cores que los procesadores tienen actualmente. Es una alternativa mejor, más sencilla y optimizada que el uso de los threads en muchas circunstancias.

     

     

    Windows 7

     

     

     

    El nuevo Windows ha sido diseñado pensando en él como un consumidor de servicios, adaptándose por lo tanto a la tendencia actual de expansión de este tipo de aplicaciones ofrecidas cada vez más por las empresas de software.

    Así mismo está siendo muy optimizado para poder soportar hardware menos potente que su predecesor Windows vista, puesto que el mercado así lo demanda. También pensando en ello los drivers necesarios para este nuevo sistema operativo serán los mismos que para Windows vista, con lo que se evitará la época de escasez de hardware compatible sufrido por su predecesor.

    Se han añadido herramientas para adaptar la funcionalidad al tipo de usuario, lo que simplifica la administración y mejora la experiencia del usuario.

    También tiene cambios a nivel estético y de funcionalidad como por ejemplo en la barra de tareas, y muchos otros pequeños cambios.

     

     

    Windows Azure

     

     

     

    Windows Azure es una incursión con mucha fuerza de Microsoft en el campo del hosting, quien permitirá que con sus herramientas de desarrollo actuales y mediante un sdk puedan crearse aplicaciones basadas en web subcontratando toda la parte de hardware y sistemas operativos y obviando complicaciones habituales de este tipo de desarrollos.

    Llaman a este concepto “sistema operativo para la nube”.

    Aseguran que podrá soportar aplicaciones y webs de cualquier tamaño, incluso con cientos de millones de usuarios, por lo que están creando grandes datacenters en distintos sitios.

    El pago será por uso, estando pendiente de definirse las tarifas.

    Inicialmente a parte de los servicios básicos como el almacenamiento dan los servicios:

    • Live services
    • .Net services
    • Sql Server
    • Sharepoint
    • Dynamics CRM

    Pronto ampliarán esta lista.

    Actualmente puede accederse en modo pruebas.

     

     

    Mesh.com

    https://www.mesh.com/Welcome/default.aspx

     

    Es un conjunto de herramientas pensadas para ayudarnos a trabajar con los distintos dispositivos que podamos tener como pc y pda.

    Tiene una herramienta de escritorio remoto, otra para sincronizar y compartir documentos entre distintos usuarios y/o dispositivos, la cual comprende 5GB de almacenamiento gratuito en sus servidores, gestión de permisos de carpetas, ver cambios realizados, etc.

    Así mismo pone a disposición de los desarrolladores herramientas para interactuar desde los programas con varios aspectos de la herramienta.

     

    ----------------------

     

    Para finalizar la jornada un consultor de Microsoft hizo un espectáculo de humor muy bien montado con el que sin duda deleitó a todos los presentes.

     

     

    El domingo se realizó una divertida y muy bien organizada gincana por equipos por las calles de Guadalajara, lo que posibilitó a sus participantes conocer de forma amena (y cansada J) esta población.

     

     

    Los capitanes de los equipos arrodillados antes de la gincana

     

     

    El equipo ganador

     

    Muchas gracias a Microsoft y a la comunidad por este interesante fin de semana.

    Daniel José.

     

  • Cambio automático de IP al perder conectividad; también control remoto

    Hola.

    Este es mi primer artículo en este blog. Trata sobre la creación de un servicio windows en visual basic .NET que mediante un ping a intervalos determinados verifica la existencia de conectividad, por ejemplo mediante una red wifi. En cuanto esta se pierde cambia la ip del pc, lo cual serviría por ejemplo si se tiene un sistema de conexión auxiliar en otro rango de ip, por ejemplo un router.

    Así mismo he añadido un tcplistener para recibir comandos remotamente, por ejemplo para forzarle a recuperar la ip inicial. Para esto no he implementado ninguna seguridad especial, por lo que no deja de ser un agujero "light". Esto en mi caso lo uso para ejecutar un bat remotamente que reinstala una nueva versión del servicio.

    Está hecho en Visual Studio 2005 a base de copiar y pegar código de aquí y de allá y no me he matado en absoluto, por lo que no esperéis un proyecto impoluto . El proyecto lo he hecho en catalán, aunque luego he cambiado los comentarios a castellano.

     

    Primero he creado un servicio de windows tal como explican aquí:

    http://www.developerfusion.co.uk/show/3441/2/

    Luego quería controlar varios parámetros mediante un fichero de configuración, por lo que he usado este generador de INI (retro total):

    http://www.experts-exchange.com/Programming/Q_21091756.html

    Los parámetros del ini son:

    [setup]
    mirarip=192.168.1.1
    intents=2
    novaportaenllac=192.168.10.254
    portaenllac=192.168.1.254
    iplocal=192.168.1.10
    interval_mirar_ip=30000
    servidor_auxiliar=sql1

    mirarip es la ip que usa para ver si ha perdido la conectividad (por ejemplo un servidor en el otro lado de la wifi).

    intents es el número de pings que hace antes de decidir que ha perdido la conectividad.

    novaportaenllac es la nueva puerta de enlace. cogerá la zona de esta puerta de enlace (10) y la ip local del pc para generar la nueva ip.

    portaenllac es la puerta de enlace por defecto.

    iplocal es una ip que verifica en cuanto ha perdido conectividad con mirarip. Esto sirve para detectar si el pc se ha quedado sin red, por lo que no tendría sentido cambiar la ip (por ejemplo si alguien ha desconectado el cable). Sería una ip que está en el mismo lado de la wifi que el pc.

    interval_mirar_ip es el número de milisegundos entre ping y ping.

    servidor_auxiliar sirve para tampoco cambiar la ip si se puede acceder a esta ip. Es una vuelta de tuerca antes de cambiar la ip del pc. Para deshabilitar esta funcionalidad, poner una ip inexistente.

     

    Para hacer un ping he cogido esto:

    http://www.elguille.info/colabora/puntoNET/ar_PingVBNET.htm

     

    Para cambiar la ip he mirado estos artículos:

    http://www.experts-exchange.com/Microsoft/Development/.NET/Q_23048931.html
    http://support.microsoft.com/?kbid=257748

     

    Y para el thread y el listener:

    http://support.microsoft.com/?scid=kb%3Ben-us%3B317421&x=15&y=10
    http://msdn2.microsoft.com/es-es/library/aa964694(vs.80).aspx
    http://geeks.ms/blogs/quintas/archive/2006/06/15/475.aspx

     

    Este programa no está muy depurado, por lo que para un entorno en producción hay que revisar e implementar la lógica que más convenga, puesto que lo hice muy a medida de lo que me interesaba.

     

    Este es el archivo del código fuente

    canviaip.rar

    Para instalar el servicio hay que usar el installutil, tal como lo explican en el enlace de la creación de un servicio. En cuanto hayas iniciado el servicio mira el visor de sucesos en la carpeta Aplicación si ha habido algún error.


    El proyecto para enviar comandos remotos está aquí:

    restauracanviip.rar

    Es muy simple, puesto que solo envía el comando al puerto de la ip del pc.

    Espero que os sea de utilidad.

    Daniel José.

AndorraDotNet.com
Ofrecido por Community Server (Commercial Edition)