Truth and freedom

nuke cap 

Pat Tillman murió en una confusión en la cual no participaron fuerzas hostiles al ejercito de Estados Unidos. A los pocos días el alto mando del ejercito sabia perfectamente las circunstancias, sin embargo medallas fueron otorgadas, citando a detalle una batalla que se sabia nunca occurio.

¿Tiene este gobierno autoridad moral para ser el juez, banquero y policía del mundo?

Castillo de arena

Visual Studio tiene un mecanismo para generar documentación xml a partir de comentarios en código. Estos comentarios los utiliza además Visual Studio para generar tips de intellisense como si el código propio fuera una librería integrada a Visual Studio. Esto de por si esta perron pero aún hay más.

Existía una herramienta para generación automática de documentación, popular entre la raza: NDoc. Desafortunadamente se murió con el .Net 1.1 y no hay versión compatible con .Net 2.0

Microsoft esta desarrollando Sandcastle, una herramienta de documentación automática basada en reflexión que no depende de comentarios adicionales aunque los puede utilizar. Genera un sitio web tipo MSDN y con el Help Workshop puede generar archivos de ayuda de Windows.

Existen algunos GUI como DocProject

dave sexton blog

Sandcastle – March 2007 Community Technology Preview (CTP)

El legado de Shannon

La convergencia tecnológica entre los sistemas de cómputo y los de comunicación refleja los conceptos fundamentales de la teoría de la información.

El concepto básico de entropía en Teoría de la Información tiene mucho que ver con la incertidumbre que existe en cualquier experimento o señal aleatoria. Es también la cantidad de «Ruido» o «desorden» presente. De esta forma, podremos cuantificar la cantidad de información que lleva una señal. Como ejemplo, consideremos algún texto escrito en español, codificado como una cadena de letras, espacios y signos de puntuación (nuestra señal será una cadena de caracteres). Algunos caracteres no son muy comunes (por ejemplo, ‘y’), mientras otros lo son más (como la ‘a’). Los caracteres más raros conllevan más información que los más comunes. Consideremoslo de la siguiente manera. Si tengo un texto de 100 caracteres y cada carácter lo represento con su código ascii de 8 bits, entonces el texto requiere 800 bits. Ahora bien, si en vez de usar ascii usamos un código que use pocos bits para las letras más frecuentes y más bits para las letras más raras, pudieramos representar el texto de 100 caracteres con menos de 800 bits.

La entropía nos indica el lí­mite teórico para la compresión de datos. También es una medida de la información contenida en el mensaje. La entropía se puede medir en bits.

Que tanto se puede comprimir un mensaje en particular depende de que tan bien podamos determinar las probabilidades de los símbolos que componen el mensaje. El enfoque estadístico es el que ha tenido más éxito en la carrera del mejor compresor.

Prediction by Partial Matching (PPM) es una técnica estadística adaptiva basada en modelos predictivos. Mucho del trabajo de optimización de un modelo PPM es como manejar sí­mbolos que todavía no se presentan en el flujo de datos. Un derivado del enfoque PPM es PAQ una serie de algoritmos en código abierto que han establecido marcas de compresión.

Implementaciones de .Net

.Net y C# es una gran plataforma de desarrollo con caracterí­sticas determinantes de productividad como por ejemplo:

  • La capacidad de re usar código, orientación a objetos y uso de genéricos.
  • La capacidad de abstraer interfaces de implementaciones
  • Administración automática de memoria.
  • Disponibilidad de librerías especializadas y genéricas

De parte de Microsoft existen dos implementaciones principales, .Net Framework para PC de escritorio y .Net Compact Framework, para plataforma movil.

La versión actual de .Net es 3.x que en realidad es 2.0 y algunos esteroides: Windows Presentation Foundation, Windows Communication Foundation, and Windows Workflow Foundation

Referencia:

How Microsoft Lost the API War

http://msdn2.microsoft.com/en-us/library/aa139615.aspx

El saxofonista y las envolturas en Do bemol

Matthew Cochran es un saxofonista que publica regularmente en C# Corner. Tiene una serie interesante sobre patrones de envoltura implementados en C#. Explica los patrones Proxy, Decorator, y Adapter  desde la perspectiva del Comic.

Proxy es un patrón que sirve como protección o interfaz. Algunos ejemplos de aplicación son: acceso remoto a la funcionalidad de un objeto; comunicación entre objetos que trabajan a distintos ritmos, el proxy se puede encargar de sincronizar la comunicación; administración de recursos limitados, por ejemplo usando un patrón de carga de datos bajo demanda.

Decorator permite manejar objetos con funcionalidad variable agregada. A partir de una funcionalidad base se agregan funciones específicas según se requieran.

Adapter permite utilizar un objeto con una interfaz distinta a la propia

Wrapper Patterns in C#: Part I

Wrapper Patterns in C#, Part II: The Proxy Pattern

Wrapper Patterns in C#, Part III: The Decorator Pattern

Wrapper Patterns in C#, Part IV: The Adapter Pattern

Mixins

¿Interfaces+ AOP=mixins?

En una aplicación mediana o grande existen algunos aspectos o temas que se repiten en varios módulos, o incluso en todo el sistema. Aspect Oriented Programming se conforma de tecnicas para manejar sistematicamente estos aspectos en toda la aplicación.

Utilizing Design Information in Aspect-Oriented Programming

http://www.infoq.com/presentations/domain-specific-languages

Captura de pantalla para Pocket PC

Fann Software ofrece un utileria gartuita para captura de pantallas de Pocket PC

Otra opción es Ilium Software Screen Capture, tambien gratis.

HauteCapture es un programa comercial para Windows CE y Windows Mobile. Tiene la ventaja de que las imagnes se guardan directamente en la PC y tiene un modo continuo de captura para presentaciones. Require ActiveSync.