Entradas

"Usabilizando" Genexus (Actualizando el Directorio Virtual en .NET)

De la serie "Usabilizando" GeneXus Hay una funcionalidad, que resulta buena cuando se empieza con Genexus en .NET y WEB, que es que se crea o modifica el directorio virtual que uno pone en F5/Options/Compilation/Execution. Esta funcionalidad tiene algunos inconvenientes cuando uno trabaja en KB que no son locales al mi PC o cuando se compila con .NET Framework 2.0. Cuando mi KB no es local a mi PC y la abri en un share, cada vez que compilo, el directorio virtual, se actualiza a apuntar a ese share, lo cual deja inconsistente la definicion del mismo. Por ejemplo, si trabajo en una KB en en I:\kbs\miKB con i: apuntando a MiServidor y en las propiedades de Execution, tengo en Virtual Directory http:\\miservidor\dirvirtual1, cada vez que compilo, el directorio virtual dirvirtual1 queda apuntando a I:\kbs\miKB lo cual muchas veces es invalido pues el servidor no ve ese share, como lo ve el cliente. Otro problema similar, ocurre cuando tengo en F5/Option/Compilation el csc del .NE...

Marcos empezo su Blog!!

Marcos Crispino empezó su blog, vale la pena leer lo que escribe pues tiene muy buenas ideas.

FreeMind y Requerimientos

Imagen
En el blog de Andres habla de la idea de mezclar wikis y verlos como MindMaps (se logran con FreeMind, se puede bajar aca ). Realmente me parece una muy buena idea, el poder tener una vista tipo MindMap, de las paginas del GXwiki, que tengan alguna categoria especifica (por ejemplo requerimiento). Creo que puede ameritar un "Collaborative Project"

Internet Explorer, Ajax y sus problemas de performance

En las aplicaciones WEB, generadas con el generador .NET en 9.0 con funcionalidades Ajax hemos tenidos problemas recurrentes de performance, cuando se ejecutan Webtransaction con el Internet Explorer de Microsoft. Toda las ventajas de Ajax, en cuanto a tener aplicaciones mas interactivas y que ejecuten logica y validaciones en el cliente, se pierden pues muchas veces pasa que se esta digitando en un campo y saltan validaciones de un campo anterior. El problema se ve agravado cuando se esta atras de un proxy y se ejecuta en directorios que no tienen acceso anonimo autorizado. La misma aplicación al ejecutarla con FireFox, funciona mucho mas rapido, por lo que supongo que el problema viene por el lado de como se ejecuta el javascript. Espero que el IE7 solucione estos problemas. Tambien seria bueno que Artech mirara un poco estos problemas, pues en el foro se han planteado varias veces.

SummarizedBy Pattern - Publicacion en GXOpen

Se liberó la primer versión del SummarizedBy Pattern y quedo publicada en GXOpen . La idea de este pattern, es poder generar consultas web, que permitan hacer un analisis dimensional ( resumenes por diferentes dimensiones) sin tener las complicaciones de definir una data warehouse y sus programas de carga. Se puede tomar una transaccion GeneXus, y se le dice por cuales dimensiones se quiere estudiar, y que filtros se quieren tener y se generan consultas web que muestran los resumenes como rankings, graficas o nubes (tagcloud). Fue una buena experiencia ver que en dos meses, se pudo llegar de una idea a un pattern operativo, con un grupo de gente trabajando en diferentes paises. Espero que le pueda servir a varios en la comunidad GeneXus. Por lo menos a Cecilia Abadie , ya le sirvio. :) Aun queda bastante trabajo por hacer , pero estoy contento con lo que se logro hasta ahora.

GeneXus en libro de IDEA Group

Probando el Google Book, encontre el libro "Managing Information Technology Resources and Applications in the World Economy" que hace referencia a GeneXus y ahora se puede ver esa pagina aqui . Es medio viejo (1997) pero igual es bueno ver como evaluan desde afuera la herramienta que usamos para desarrollar.

Paralelismo y concurrencia

Desde hace un tiempo, vengo viendo la necesidad que estamos teniendo de poder generar aplicaciones que usen mas la infraestructura de hardware que cada dia son mas comunes: Cluster/Grids Por el lado de agrupar varias computadoras en procesamiento paralelo se va a poder escalar mucho en el tipo de aplicaciones que vamos a necesitar. Servidores Multiple-procesador Es comun tener servidores con mas de un procesador. Procesadores Multi-Core Los equipos de escritorios y notebooks que se compren de aqui en adelante, seran multi-core. Viendo esto, me hace pensar que necesitamos (y necesitaremos cada dia mas) aplicaciones que puedan sacar partido de toda esta infraestructura que se esta creando. Las mayoria de las aplicaciones actuales , estan muy mal preparadas para poder aprovechar todo el nivel de paralelismo que estas plataformas pueden dar y tengo la sensacion que dominar y explotar los algoritmos de "Programacion Paralela" no es tarea trivial y nos va a exigir focalizar esfuerz...

"Usabilizando" Genexus (Consolidacion en Modelos prototipo o produccion)

De la serie "Usabilizando" GeneXus Me gustaria poder consolidar (ignorando transacciones y atributos) en modelos de prototipo o producción. En una KB donde mas de un desarrollador esta programando, el pasar a Diseño, es algo que se trata de evitar al maximo, pues mientras alguien esta en Diseño, todos los demas deben esperar. Uno de los motivos que hace necesario ir a diseño, es el de consolidar objetos. Considero equivalente el consolidar objetos en un modelo de prototipo o produccion a que un desarrollador cree/edite esos mismos objetos a traves de Genexus, por lo que no veo ninguna dificultad en que se pueda consolidar sin tener uso exclusivo de la KB. Si se permitiera la consolidacion en modelos que no sean diseño mas de un desarrollador podria usar GXPatterns sobre la misma KB, aumentando asi la productividad del grupo.

"Usabilizando" GeneXus (Consolidaciones Parciales)

De la serie "Usabilizando" GeneXus Muchas veces me ha sucedido, tener un archivo de distribucion (XPZ) que contiene muchos objetos distribuidos, y tener necesidad de consolidar un subconjunto de estos. Esto pasa cuando se tiene un version vieja del sistema en un xpz y se quiere volver solo un objeto a su estado anterior. Lo que generalmente hago en estos casos, es consolidar todo en una KB vacia (o en una copia de la actual) y luego distribuir solo los objetos que me interesan y consolidarlos en la KB destino. Todo esto es una perdida de tiempo, que podria solucionarse, permitiendo elegir que objetos quiero consolidar de un distribute. Desde GeneXus, se puede ver cuales son los objetos que tiene el distribute, pero no se puede elegir cual de ellos consolidar y esto es una verdadera pena.

"Usabilizando" Genexus (Reorganizaciones Parciales)

De la serie "Usabilizando" GeneXus Creo que este problema se explica solo, con un ejemplo. Una KB GeneXus de unos 4000 objetos, que tiene un modelo de prototipo y otro de producción. a)Es necesario programar un nuevo módulo, que implica cambiar 10 transacciones (cambian su estructura y codigo) y algunos objetos adicionales (procedimientos, webpanels, etc). La programacion / pruebas / documentacion van a llevar una semana. b) Como Murphy trabaja para el enemigo, es común que aparezca durante esa semana, algún cambio URGENTE e impostergable (los mas comunes son algún decreto del gobierno), que obliga a la realización de algún cambio menor en el modelo de datos, que obliga a cambiar alguna otra transaccion del modelo de diseño. Esto plantea un dilema Si hago el impacto, va a llevar a producción transacciones que aun no estan listas (las del cambio a) Si no hago el impacto, no puedo llevar los cambios que necesito para el cambio b. En cualquiera de las dos opciones, estoy dejando...