::::
::Español :: Bitácora del Dúnadan
Module Border Module Border
  Categorías   Minimize

Module Border Module Border
Module Border Module Border
  Renata   Minimize

Module Border Module Border
Module Border Module Border
  Buscar   Minimize

Module Border Module Border
Module Border Module Border
  Archivo   Minimize

Module Border Module Border
Module Border Module Border
  New_Blog   Minimize

Module Border Module Border
Module Border Module Border
  BloG de Dúnadan  

Author: Dunadan Raptor Created: Wednesday, February 15, 2006
Cada día algo pasa... cada día queda algo para recordar...

By Dunadan Raptor on Friday, August 17, 2007

Hasta hoy que no tenía nada que subir a YouTube y Natalia llegó con un CD que me dió razón por demás justificada. Junto a tener una foto antes de ver al bebé fuera, son las únicas razones para decidir usar la bendita ecografía 4D. Realmente, no parece tener otro objetivo que generar dinero. En fin... por lo menos hay un CD con un par de videos con segundos de filmación vía ultrasonido y unas fotos adicionales. Los videos los he puesto en YouTube en estas direcciones, un poco de orgullo en Internet ¿no?

By Dunadan Raptor on Friday, August 03, 2007

Este artículo en la revista Dr Dobb's Journal describe cuatro señales que indican cuando una persona está microadministrando:

  • Ignorar momentos de reportes acordados y pedir reportes de estado más frecuentemente.
  • Enojarse porque las personas fallan en las entregas.
  • Cambiar constantemente asignaciones/tareas de trabajo.
  • Dictar implementaciones en vez de requerimientos.
  • Uno de los resultados es que la administración de un proyecto falla en proporcionar "Empoderamiento" al equipo. El empoderamiento es uno de los tres elementos básicos de la administración de software según Mark I. Himelstein. Los otros dos son Ejecución y Comunicación.

    Para Himelstein el administrador de software "tiene que dar una oportunidad a la gente para que pueda hacer su trabajo en un ambiente positivo. Los problemas deben ser enfocados como cosas a resolver. Es necesario engendrar confianza para obtener la verdad cuando se pide un [reporte de] estado. Empoderamiento también significa dejar que los empleados ayuden a desarrollar sus propios horarios. Mientras el administardor pone una meta para el lanzamiento, se deben rectificar diferencias entre las metas para el contenido del lanzamiento, las metas para los tiempos del lanzamiento y los recursos a mano"

    Precisamente en uno de los podcasts de The McCarthy Show, Jim McCarthy que trabajó para Microsoft por años, habla de tres elementos que son comunes a todos los proyectos de software: Funcionalidad, Tiempo y Presupuesto y que cuando uno de ellos debe ser cambiado, necesariamente debe alterarse los otros dos. Himelstein, en su artículo, aunque no habla de presupuesto, se refiere a Recursos -es decir desarrolladores-, y Calidad.

    Ajustar el equilibrio de estos elementos, es uno de los trabajos del administrador del proyecto. En la industria del software es regla general el "se necesita para ayer", que resulta en cronogramas irreales. Una de las comunes es que el administrador termina metiéndose en todos los detalles posibles sin poder hacer su propio trabajo bien.

    ¿Qué piensas? ¿Cuál es tu experiencia? Házmelo saber en el foro que acabo de abrir para discutir experiencias.

By Dunadan Raptor on Thursday, August 02, 2007

Ayer (Agosto 1) tomaron la primera foto a nuestr@ bebé. No dejó de moverse durante toda la sesión y la ecografía 4D permitió ver lo activ@ que estaba. Aun no sabemos el sexo y con suerte no lo sabremos hasta el día del parto que será aproximadamente el 8 de Diciembre. Por favor saluden al próximo Sánchez.

MyFirstPic

By Dunadan Raptor on Sunday, July 29, 2007

Coordinar al mismo tiempo dos actividades no es una tarea fácil siempre, y en este caso no es un juego, pero es un juego... Y al revés también!!!

En mis primeros intentos llegué a 4000+ puntos. La cosa es que los 2 primeros dicen tener 2 mil MILLONES de puntos! En fin, dale al juego: Play Triangles

By Dunadan Raptor on Saturday, July 28, 2007

He empezado a consolidar el contenido de mi sitio personal y el de DNNLA, dedicado a proporcionar contenido sobre Dotnetnuke.

El sitio corre inicialmente sobre Dotnetnuke v. 4.5.5 y solo módulos standard.

By Dunadan Raptor on Thursday, May 31, 2007

Una de las funcionalidades que ayuda a recuperar tiempo con Visual Studio es la de poder ver de inmediato cuando se abre un proyecto, los archivos más recientes con los que se estab trabajando. Pero si algún archivo se corrompe, es posible que Visual Studio no pueda iniciarse porque el archivo no se puede abrir. En este caso, es posible removerlo desde el registro. La clave FileMRUList tiene la lista de los archivos que estaban abiertos la última vez que se trabajó con el proyecto:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\FileMRUList

Removiendo el archivo de la lista VS vuelve a abrirse. No he experimentado si el orden de los archivos altera en algo el comportamiento así que si aplicas este truco, mejor pruebas reordenando los números de archivo.

By Dunadan Raptor on Sunday, April 22, 2007

La primera foto de el o ella.... Seis semanas ahora... Alrededor del 14 de Diciembre tomaré una foto de mi segund@ hij@ frente a frente.

más Sánchez

By Dunadan Raptor on Saturday, April 14, 2007

En la versión 4.5 de Dotnetnuke es increíblemente fácil actualizar un módulo de Dotnetnuke para que funcione con AJAX. En esta entrada se describe las dos maneras de aplicar AJAX en módulos Dotnetnuke.

Usando Control Definitions
Suponiendo que el servidor web en el que corre Dotnetnuke tiene AJAX instalado, al habilitar un control específico de un módulo para usarlo, el módulo completo es envuelto en un UpdatePanel. Esto se logra de dos maneras:

1) Al instalar el módulo agregar en el nodo Control este valor:

<code><supportspartialrendering>true</supportspartialrendering></code>

 2) Con el módulo instalado ingresar a Host>Module Definitions>, seleccionar el módulo deseado y seleccionar el control para el que se habilitará AJAX y marcar el campo Supports Partial Rendering.

Cuando Partial Rendering está habilitado, se puede aprovechar la librería de AJAX de Microsoft y el Control Toolkit de Microsoft.

Para probar con un ejemplo simple, en una página con un par de controles de etiqueta (Label) y un Botón. La segunda etiqueta y el botón dentro de un UpdatePanel, la primera etiqueta fuera.

Luego, agregar un evento click vacío Click al Button, un timer y una actualización a los datos de las etiquetas.

<code>

System.Threading.Thread.Sleep(3000)

Label1.Text = DateTime.Now()

Label2.Text = DateTime.Now()

</code>

Al hacer click, la hora solo se actualizará la etiqueta que está dentro del panel y la otra permancerá sin cambios.

El desarrollador al control
Hay que recordar que solo puede existir un objeto ScriptManager en cada página, como Dotnetnuke es en realidad una página, lógicamente la responsabilidad de agregarlo dinámicamente debe recaer en el framework y no en los módulos. De eso precisamente se encarga la clase Dotnetnuke.Framework.Ajax. La clase presenta ocho métodos:

  1. AddScriptManager: usada internamente por el framework para agregar un control ScriptManager a la página.
  2. ContentTemplateContainerControl: Devuelve una referencia al control ContentTemplateContainer dentro de un UpdatePanel
  3. CreateUpdatePanelControl: crea una instancia de un control UpdatePanel de manera dinámica en la página
  4. IsInstalled: Retorna un valor de tipo boolean para determina si AJAX se ha instalado en el servidor.
  5. RegisterScriptManager: se usa para instruir al framework que AJAX es requerido para la página.
  6. RemoveScriptManager: Remueve el control ScriptManager durante el evento de Page Render si el método RegisterScriptManager no fue llamado.
  7. ScriptManagerControl: devuelve una referencia al control ScriptManager de la página.
  8. SetScriptManagerProperty: asigna valores a las propiedades del control ScriptManager usando reflection.

Usando IsInstalled() es posible determinar si AJAX se encuentra instalado en el servidor, al combinarlo con RegisterScriptManager se podrá instruir a Dotnetnuke que agregué el control ScriptManager para que el control del módulo puede acceder a Ajax. De esta manera el resultado del ejemplo anterior es exactamente el mismo sin necesidad de habilitar partial rendering en el control.

<code>If DotNetNuke.Framework.AJAX.IsInstalled() Then

DotNetNuke.Framework.AJAX.RegisterScriptManager()

'Do some stuff

End If

</code>

By Dunadan Raptor on Wednesday, March 21, 2007

Ayer acabé de grabar el retorno de RockAndBol, un programa de cobertura al rock boliviano, en este 2007. El programa fue conducido toda la segunda temporada exclusivamente por el Único Pato al Aire. Con él, se consolidó el nombre y la producción.

En esta tercera temporada hay varios retos, el más importante de ellos consolidar la presencia a nivel nacional y unificar el esfuerzo del portal rockandbol.com y RockAndBol.Radio.

Ya tendré más comentarios, por ahora espero los suyos en los foros de ese portal.