Entradas

Nuevas formas de ver los blogs de blogger.com

Blogger anuncio nuevas formas de ver y navegar los blogs. Por ejemplo: http://ealmeida.blogspot.com/view/snapshot http://ealmeida.blogspot.com/view/sidebar http://ealmeida.blogspot.com/view/flipcard (prueben navegar por fecha, por autores, por etiquetas, esta muy bueno). http://ealmeida.blogspot.com/view/timeslide http://ealmeida.blogspot.com/view/mosaic Algunas estan mejores que otras, pero es bueno que Google muestre el contenido de los millones de blogs que existen en diferentes formatos, pues ayuda a que el contenido pueda ser consumido por otros dispositivos.

Paralelizando procesos batch.

Imagen
En los últimos tiempos me ha tocado optimizar algunos procesos batch, para hacerlos mas rápidos. En general los proceso que he visto, son de la forma. INICIALIZACION PARA UN CONJUNTO GRANDE DE REGITSROS ..PROCESO UN REGISTRO FIN PARA AJUSTES FINALES Una forma " fácil " de acelerar el procesamiento de muchos registros, es aprovechar a ejecutar varias tareas en paralelo, lo cual en los procesadores actuales que tienen muchos Cores o computadoras con varios procesadores. Si bien esto en principio parece fácil, aparecen nuevos problemas que hay que tener en cuenta. El hacer paralelos nuestros programas es algo que vamos a tener que aprender a hacer pues en los próximos años va a ser cada vez mas común. En forma general, el programa anterior puede quedar de la siguiente forma INICIALIZACION PARA UN CONJUNTO GRANDE DE REGISTROS ..SI CANTIDAD DE PROCESOS SOMETIDOS >= MAX_CANTIDAD_PROCESOS_SIMULTANEOS ==> ESPER ..PROCESO REGISTRO (EN BACKGROUND O SOMETIDO). FINALIZACION Algun...

Se buscan estudiantes de Ingenieria en Computacion

Imagen
En CONCEPTO estamos buscando : Estudiante de Ingeniería en Computación que esté cursando tercer/cuarto año. Se prefiere conocimiento GeneXus (no excluyente) y Base de Datos Si te gusta programar y resolver problemas, mandanos un mail a rrhh@concepto.com.uy con tu curriculum. Si podes viajar a los paises de latinoamerica, da puntos dobles :) Como nos interesa que todos los que trabajen en Concepto se reciban, damos facilidades en el horario de trabajo y facilidades para los examenes, para que puedas terminar la carrera. Es para trabajar en nuestras oficinas en Av. Italia 6201, Parque Tenologico del LATU, edificio Los Sauces Actualizacion: Gracias a todos los que se presentaron. Ya cubrimos las vacantes que teniamos.

Instalación de objetos cambiados en grandes aplicaciones GeneXus.

Imagen
Hay aplicaciones que son mas fáciles de instalar que otras. También influyen mucho en la forma que se instala una aplicación los procesos que se tengan definidos en la organización en la cual se instalan. En el entorno que me muevo habitualmente, la forma de trabajo es la siguiente : Los usuarios funcionales definen los requisitos o requerimientos de la aplicación. Un grupo de desarrollo diseña y programa la solución y se realizan pruebas técnicas El grupo de usuarios que fija los requerimientos debe dar la aprobación que la aplicación cumple con los requisitos. Para lograr esto, se tienen los siguientes ambientes: Desarrollo. Donde los desarrolladores GeneXus programa y consolidan su trabajo Pre-Producción . Donde los usuarios expertos realizan las pruebas funcionales y aprueban el pasaje a producción. Producción. Donde se ejecuta la aplicación. Los desarrolladores no tienen acceso a este ambiente, o algunos solo tienen acceso para realizar consultas. ...

PiensoPienso: Respuesta de Paralelizando programas.

Imagen
Esto es una respuesta al post Paralelizando programas . Viendo las respuestas que brindaron los lectores (gracias!), vemos 2 tipos de soluciones: hacer submit hacer shell con la opción que no espere a que termine. de forma de hacer una llamada asincrónica (que no esperar_a que termine). El problema mayor esta en limitar la cantidad de instancias que pueden correr en forma simultanea. Según el problema había que limitar a 8 la cantidad de procesos/thread simultáneos. No estaba dicho el el problema, pero si se genera el programa en java/web, se puede utilizar el SUBMIT, con la propiedad SUBMIT_POOL_SIZE =8 en el client.cfg. SUBMIT_POOL_SIZE es una propiedad implementada solo en java/web en el 2003, que esta buena y me entere hace muy poco de su existencia. Creo que puede ser interesante implementarla para el resto de las plataformas (.NET y Ruby), pues el tema de paralelismo va a ser cada vez mas necesario. Si el programa es .NET, puede utilizarse el shell no modal ...

PiensoPienso: Paralelizando programas.

Imagen
En una KB GeneXus tengo una tabla de la forma Tabla *Clave N(10) Procesado C(1) Otros VarChar(1000) y un programa GeneXus que hace lo siguiente: for each where Procesado='N' Proceso_y_Marco(Clave) endfor El Proceso_y_Marco() es un procedimiento que demora en promedio 1 segundo, aunque algunos demoran 5 minutos y otros menos de medio segundo. Este proceso marca el registro como procesado y puedo ejecutar varias programas de estos en paralelo con diferente parametro, pues no produce bloqueos entre ellos. El proceso es bastante pesado y no pueden ejecutarse mas de 8 procesos simultáneos sin perjudicar la performance del resto del servidor donde ejecuta. Hacer un programa que ejecute el proceso_y_marco() en paralelo, no superando los 8 procesos simultáneos. Explique los cambios a realizar en el código. UPDATE: Segunda parte en Respuesta de Paralelizando Programas

Firma digital en Aduana Uruguay

Imagen
Mas lento de lo que querría pero el tema firma digital va avanzando en Uruguay. Hace aproximadamente 3 años se planteo la Agenda Digital donde el gobierno uruguayo ponía como prioritario el uso de firma digital para trámites en el estado. AGESIC es el organismo encargado de promover estas actividades y de a poco han ido armando la infraestructura necesaria para la utilización de certificados digitales y posibilitar la eliminación de firmas en papel. Esta planeado que para Abril, tengamos tramite en la aduana totalmente digitales y no haya que presentar ningún papel. Visto de afuera parece algo sencillo, pero hay que tener en cuenta, que los tramites aduaneros incluyen mucha documentación que viene del exterior y también que es emitida por otros organismos del estado, de los cuales no todos tienen capacidad informática como para transmitir electrónicamente la información. Una de las cosas mas delicadas de la utilización de firma digital es la emisión de certificados. Es indispensab...

Pienso-Pienso: Cual es la salida de este programa?

Imagen
(ejemplo brindado por Alejandro Rinaldi). Tengo dos tablas: Casas CasaId PersonaId Color PEPE01 MUJICA NEGRO CUQUI01 LACALLE BLANCO CUQUI02 LACALLE VERDE Autos AutoId PersonaId Color PEPE10 MUJICA BLANCO PEPE11 MUJICA NEGRO CUQUI10 LACALLE NEGRO También existen una tabla de colores y de personas, pero no son relevantes para el problema. Necesito hacer un programa que liste las casas, con sus dueños e indique si hay autos con el mismo color, no importado que los autos sean de la misma persona que la casa. Para esto hago un procedimiento (main, command line, en C#) que hace for each CasaId &Color=Color do 'BuscoAutosDelMismoColor' Msg(format( 'Casa %1 de %2 es color %3. Hay ...

Chau Maria Elena!

Hoy se fue Maria Elena Walsh . Cuando era niño, acostumbraba escuchar sus canciones en disco de pasta, hasta gastarlos. Cuando fui padre, compre 3 libros con sus letras de muchas de sus canciones y algunos cuentos, con ilustraciones muy lindas. A mis hijos les encantaba cuando las leiamos por las noches y casi siempre (cuando no se hacia muy tarde) terminabamos cantando todos juntos. Por como quedaron los libros, con el lomo gastado y uno de ellos sin tapa, estoy seguro que fueron muy bien aprovechados. Chau Maria Elena, me hiciste pasar lindos momentos en mi vida. PD: No es de las canciones mas lindas que compuso pero "El señor Juan Sebastian" me eriza cada vez que la escucho y nunca supe porque..

GeneXus SDX y repositorio de dominios.

Imagen
Probe GenerXus SDX . Me gusto.  Me gustaria tener mas tiempo para poder probarlo mas en serio. Cuando empece a probarlo,senti la necesidad de tener un repositorio de dominios y entidades en que basar el desarrollo. Creo que podria ayudar muchisimo a quienes necesitan aplicaciones para dispositivos moviles y no estan familiarizados con el desarrollo en GeneXus. El usar tecnologia WEB en el desktop para crear aplicaciones para SmartDevices, me hizo sentir como cuando usabamos DOS para crear aplicaciones Windows. Hay que ver si esto terminara igual, donde una tecnologia termine sustituyendo totalmente a la otra y dentro de unos años terminemos desarrollando aplicaciones para Smartdevices en esos mismos dispositivos.