Google
 

sábado, 27 de diciembre de 2008

Performance

En la mayoría de las empresas que vienen utilizando Genexus, lo tenían bien ponderado o por lo menos lo aceptaban como bueno a partir de la idea de un reorganizador de base de datos automático (aunque a veces ni tan automático).

Algunos de sus sistemas back-office y servicios en linea "críticos" lo tienen bajo la programación tradicional , y es aquí la mayor critica que va en aumento. Genexus no es útil para procesamiento con alto requerimiento de respuesta, en otras palabras, "alta performance".

Creo también que Genexus no esta concebido para administrar "conocimiento" de un proyecto "Grande" tirando a Gigante, mas bien esta orientado para administrar pequeños a medianos proyectos. En la practica no conozco a ningún "consultor Gx" que de con la receta mas acertada de como administrar una KB Grande/Gigante.


Resulta casi imposible trabajar con una KB con 1000 transacciones.  Agregar la transaccion 1001 o realizar un cambio a alguna transaccion agregando un atributo tarda mas de "20 minutos", ni hablar de las complicaciones si llegaste a aplicar Pattern, el concepto de "incremental" sencillamente no aplica.

Espero que la gente de Artech antes de estar preocupándose y ocupándose en demasía en estar en lo ultimo de la tecnología, también se ocupen de enseñar las mejores practicas y generar el mejor código para mejorar la performance. 

No estoy en contra de estar al vanguardia, pero siendo sincero, ¿como funcionaban nuestros negocios sin esas "nuevas tecnologías"?, ¿será que es lo más importante?, o lo mas importante es prestar nuestros servicios de procesamiento lo mas rápido posible, más que la competencia. 

Por ejemplo, ¿no tuvieron el problema de "timeout" de un webservices hecho en Genexus, y la regla del negocio indica que la respuesta debe darse antes de 40, 30, 20 o 10 segundos? ¿No tuvieron que "escribir código a mano" a esa parte de la solución ya que con Genexus dichos procesamientos no se llegan al tiempo requerido de respuesta? 

O en ves de webServices, procedimientos RPG, que por realizar la navegacion por extendida, hace que tarde mas y por ello se opte por programar a mano. 

Seguro que la gente de Artech lo sabe, y la historia que conozco de utilizar Genexus en una empresa es de la siguiente forma.

  • Sistema original (programas y archivos hechos a mano)
  • Compra de Genexus
  • Nuevos requerimientos hechos en Gx (abm con gx de las transacciones, algunos procedimientos, adaptacion del viejo sistema hecho a mano para lectura de los archivos hechos con GX)
  • Molificación de parámetros con Gx del viejo sistema utilizando DataView
  • Poco a poco se van reemplazando el sistema hecho a mano y se lleva a GX

Cuando la mayoría de los sistemas están en Genexus excepto los procesos "críticos", en el entorno de Desarrollo fluye el siguiente razonamiento:

  1. Gx. Útil para conocer rápidamente el negocio (visualmente) y brindar posibles soluciones
  2. Los sistemas hechos con Gx son lentos. Se entregan mas rápidos, pero el sistema entregado es lento.
  3. ¿Será conveniente reemplazar mi servicio de respuesta rápida con Gx.?  
  4. ¿Será conveniente irme a web, mis entradas diarias aumentaran en comparación con los servicios win que hoy ofrezco?
Gente de Artech, por favor denme una luz, quizás tendrán que rever el concepto del cual se creo Genexus Knowledge-based Development - Philosophy and Theoretical Foundation of GeneXus y agregarle una palabra más, "Performance".

miércoles, 15 de octubre de 2008

RPG para GenexusX

Si hay una crítica que pueda hacerle a la gente de Artech, es lo rezagado que dejan al generador RPG.

Antes de ser programador Genexus, fui programador RPG, y antes de programador RPG, programador Clipper, pero gran aprecio le tengo al RPG, pues con este lenguaje di un gran salto en lo que se refiere al salario.

Conocimiento un poco la historia de Artech, el producto se debe básicamente al generador RPG, pues gracias a este generador, entro dentro del mercado del AS400, y por ende tener empresas medianas y grandes como clientes.

Me gusta la idea de que Artech esté a la vanguardia de la tecnología, y también me gustaría que todas las nuevas funcionalidades estén disponibles para RPG.

Cito solo algunas de las operaciones que no se pueden realizar en RPG desde Genexus, y lo digo desde Genexus, ya que el lenguaje RPG permite generar código para los siguientes:

  • StrReplace
  • Manipulación SDT
  • Manipulación de archivos
  • Manipulación XML
  • Cola de Datos
  • Long VarChar
  • Concatenación
  • Impresión de Gráficos
  • SQL
Con el formato free del RPG, también se podría permitir codificar directamente como a la fecha se permite codificar para java puro.

Insisto en que no deberian dejar de lado al generador RPG, pues hasta hoy no conozco una base de datos tan rápida y segura para el procesamiento batch dentro de las medianas o grandes empresas, ya que el mercado se esta orientando en ofrecer mas y mas servicios, y eso requiere tiempo de procesamiento.

Tambien deberían de ver al mercado para donde se dirige, IBM cada vez va mejorando sus servidores entrando de a poco en el rango de pequeñas y medianas empresas. Los conceptos de virtualización esta muy de moda, y IBM no se queda atrás, sabe que las cosas para servidor de aplicaciones web están en el Linux, pero la manipulación de los datos no hay mejor que el DB2 del Iseries.

Quizás no soy muy objetivo, pues defiendo la utilización del RPG por los resultados que obtengo a la fecha, no hay modelo que lo iguale en seguridad y rapidez. Puede que el punto en contra sea el comparar los costos, pero asumo que vale la pena, pues está en el mercado desde hace mucho tiempo. Tanto tiempo estando en el mercado y encima caro, puedo deducir, que la plataforma es muy buena.

Siempre me hice la pregunta de porque Artech no dirige su producto al mercado de EEUU. Asumamos que con esta crisis financiera se tenga que disminuir la mano de obra del area TI, en los EEUU, pero se quiera continuar construyendo/adaptando el software existente. Mas de una empresa comenzará a buscar un software administrador de conocimientos en vez de recurrir a infinidad de programadores. Les dejo a su cargo la investigación de cual es el mercado con Iseries y lenguaje RPG corriendo a la fecha solo en los EEUU. También asumo que con esta crisis, nadie quiera cambiar de plataforma, ni mucho menos volver a programar todo el software ya hecho por el simple hecho de irse a una plataforma mas "barata".

Por otro lado, asumamos también, de que el RPG este por extinguirse, y se extinga porque la nueva generación no la conoce, y presupone que es un lenguaje obsoleto, inservible, ya que lo estudio cuando estaba en el Colegio Técnico en informática en la materia "Historia de la Programación".

Podría venderse la idea de que la herramienta te permite generar RPG y el día de mañana la "empresa" pueda cambiar a la plataforma que desee, por ejemplo, java + mysql en un super servidor montado sobre Linux; no habría mayores problemas y así te cambias del mundo "IBM" que en teoría es muy caro. Para que esta conjetura funcione, y ganarse la confianza de esa empresa, el generador RPG debe ofrecer todas las funcionalidades Genexus.

Ojala Artech me sorprenda, y pueda hacer con el generador RPG objetos con "todas" las funcionalidades que permite GenexusX.

¿Y ustedes, que opinan?

martes, 14 de octubre de 2008

Cumpleaños

Para dar señales de que existo, algo que me llena de "orgullo" para seguir adelante

Hace como 3 semanas, un domingo a la vuelta del festejo de cumpleaños del compañero de escuela de mi hija, conversamos sobre lo entretenido que fue el cumple, y que ella quería lo mismo.

Al llegar a casa, el mismo comentario a su madre, y como toda conversación de mujeres, el tema fue entrando en mayores detalles

- !Mamá, yo quiero también que en mi cumple venga un mago!
Sabiamente, su madre responde, -Si, puede ser
- !Mamá, yo quiero también una casa de dos pisos grande y linda como la casa de mi compañero!
Otra sabia respuesta - Algún día lo vas a tener, cuando seas grande

Pero mi esposa continuo
- Aunque tenes que casarte con un hombre que tenga mucha plata
- Y vos mamá, ¿Porque te casaste con papá?

domingo, 31 de agosto de 2008

Signon Java-jt400

Para los que trabajan con Iseries, aquí una forma de autenticarse con el generador Java utilizando jt400.

jueves, 10 de julio de 2008

Adobe Systems cede a la ISO las especificaciones del formato PDF

¿Para el mundo Genexus como afecta esto? ¿O por lo menos para la generación de reportes PDF?

Antes de abordar las consecuencias para los que vivimos de trabajar con Genexus, opino que pudiera ocurrir los siguientes:

  • ISO PDF comenzará a incorporar las funciones avanzadas que hoy permiten los formatos AFPDS, IPDS, Postscript, PCL y demás. Por dar un ejemplo, recién con Acrobat 8.0 se incorpora la propiedad DUPLEX (disponible a la fecha en iText. (tengo como pendiente investigar para generar un PDF Duplex con GX9.0)), otro ejemplo podría ser el hecho de la manipulación de ensobrado, clasificación y engrapado.
  • Mas impresoras comenzarán a adaptar como protocolo incorporado el formato ISO PDF, por consiguiente adaptando a las prestaciones propias de la impresora.
  • Habrá productos para la administración de colas de impresión para archivos ISO PDF.
Bueno, para el mundo Genexus, es una muy buena oportunidad, tanto para Artech como empresas proveedoras de soluciones GX, se pueda tener integrado al software de gestión hechos con GX la administración de archivos PDF.
  • Administración de colas(retener, cantidad de copias, enviar a impresora, especificar rango de paginas)
  • Autorización de visualización, impresión
  • Distribución masiva
  • Utilizar los formularios PDF como introducción de datos
¿Qué opinan?

miércoles, 9 de julio de 2008

Apertura Expo 2008

Que buenos recuerdos me traen a la memoria la Expo. Cuando niño, en uno de los primeros años de la expo, fue la primera vez que vi una computadora de "cerca", y desde aquella ves quede encantado con esta maquina, con el cual hoy, desarrollo gran parte de mi profesión.

Pero el punto en cuestión no es hablar de mi, sino presentarles a mi hermana, dando inicio de un Festival de Arpa con sus compañeros de Arpa Roga, en el día de Apertura de la Expo 2008.

¡Espero lo disfruten!

lunes, 7 de julio de 2008

Tips GX: Impresión x Posición PDF, Java II

Esta vez el tip es para imprimir texto

java getPrinter().GxAttris("MS Sans Serif", 20, true, false, false, false, 0, 0, 0, 0, 0, 255, 255, 255) ;
java getPrinter().GxDrawText("MS Sans Serif Font 20", 80, 400, 80+200, 400+20, 256) ;

java getPrinter().GxAttris("MS Sans Serif", 18, true, false, false, false, 0, 100, 50, 200, 0, 255, 255, 255) ;
java getPrinter().GxDrawText("MS Sans Serif Font 18 Otro Color", 80, 500, 80+200, 500+20, 256) ;

java getPrinter().GxAttris("MS Sans Serif", 16, true, false, false, false, 0, 100, 50, 200, 1, 10, 200, 10) ;
java getPrinter().GxDrawText("
MS Sans Serif Font 16 Otro fondo de Color", 80, 600, 80+200, 600+20, 256) ;

domingo, 6 de julio de 2008

Tips GX: Impresión x Posición PDF, Java

Hace como 7 años, investigando (aunque mas cercano es decir curioseando), encontré una forma de imprimir imágenes en un AS/400, programando en RPG. De aquel pseudo-descubrimiento, llegue junto a un compañero de trabajo y amigo con visión empresarial, dimos un curso de Impresiones Avanzadas AFPDS.

Aquel requerimiento inicial para urgar en este tipo de solución consistía en la impresión dinámica de "overlays" para los extractos de Tarjetas de Crédito, mi ex-empresa tenia varias Entidades Bancarias y Financieras como Clientes, y cada uno de ellos con un diseño de extracto "pseudo-exclusivo".

Realizar esta solución dentro de un ambiente Genexus, a primera vista, me pareció imposible de desarrollar por el mantenimiento que podría requerir y la solución casi mas cercana, seria crear un reporte por cada formato de extracto (el cual seria prácticamente un reporte por cada entidad) y eso en el largo plazo, ante modificaciones masivas, requeriría mucho tiempo.

Aquello no me gusto para nada, hasta que se me ocurrió una idea, y al final logre imprimir imágenes por posición en forma dinámica. El tema es que estaba buscando la forma de sacar rédito de este conocimiento, pero creo hoy, ya como profesional independiente, y con los trabajos a tiempo completo que tengo por delante, quizás alguien le encuentre una mejor presentación o inclusive presione a la gente de Artech a realizar una implementación de este "tip"

Tengo un xpz para que lo vean como funciona, son 2 objetos, un webpanel y un reporte. Envienme un email a generadordecodigo@gmail.com y les adjunto el xpz, aunque el tip consiste en utilizar el siguiente código.

java getPrinter().GxDrawBitMap([!&fname!], [!&PosXa!], [!&PosYa!], [!&PosXb!], [!&PosYb!]) ;

Web Panel Inicio









PDF Resultado

viernes, 27 de junio de 2008

Cambiar es crecer

Esta es la nueva integrante de la familia. Una foto justo al mes de vida. nació con 3,475 Kg. y al mes 4,250 Kg. Se muy bien el significado de "Cambiar es crecer", las ropitas de recién nacida ya no le caben, para mi la mejor frase se "Crecer te obliga a cambiar".

Ya desde el año pasado he estado soñando en ir cambiando de rutina. Antes, comencé este blog, luego inicie búsqueda de una nueva casa, aquello no salio, así que emprendimos a ampliar nuestra propia casa. Hasta hoy aun no terminamos, si terminamos el dormitorio de mis otros hijos donde disfrutan su nuevo espacio a la espera de que la nueva integrante crezca, y ocupe su dormitorio y ya no este con sus "papis". Luego en estar libre de deudas, otro cambio, aun no hecho con demasía realidad, aunque sabemos que es lo mejor ante cualquier eventualidad. Otro cambio, ser independiente, formar mi propia empresa, por lo que a los 10 días de la nueva integrante presente mi renuncia, como ultimo recurso para quedarme por ahí, solicite el salario promedio del mercado, y me dijeron que no. Hoy 27 de junio, renunciante hasta el 02 de julio, ya estoy con nuevo trabajo, todavía como dependiente, tendré que cumplir horario pero tendré que emitir factura; así que, podría decir que soy medio-independiente, aunque tengo que reconocer que me interesa mucho hacer carrera en este nuevo tipo de negocio. Y si, me pagan el salario que solicite en mi anterior trabajo.

Muchos cambios, y por mi bien, espero estar creciendo.

¿Y ustedes, que opinan?

miércoles, 2 de abril de 2008

Arte casero



No soy critico de arte, pero esta rama ahora comienza a interesarme, mas por estos dibujos hechos en "Paint" por mi hija Gabi de 5 años. Mas que "entender" de arte, estos dibujos me hacen muy feliz.



Espero les guste tanto como a mi


jueves, 21 de febrero de 2008

Dos meses y aun sin casa.

Pasaron mas de 2 meses sin escribir, ni siquiera una sola línea, ¿estuve de vacaciones?, No!
Estuve con varios proyectos, el primero de ellos ¡Salir de deudas! y ahora mismo lo estoy, salvo las compras del mes por tarjeta de crédito que al próximo vencimiento lo estaré cancelando.

Hace como dos años, leí un libro "Como llegar a Fin de Mes" del Dr. Andrés Panasiuk, lo compre esperando encontrar alguna solución o formula mágica para levantar mi alicaída economía, gran sorpresa la mía, no encontré ninguna formula ni receta mágica, pero si algo de gran impacto para mi vida y principio fundamental para un cambio profundo en mi carácter "Nunca gastar más de lo que uno tiene". ¡Básico! me dirán, pero yo no lo hacia.

El siguiente proyecto era vender mi casa y comprar otra casa más grande. Me agarró un bronceado bastante profundo buscando casas para comprar. Aquello no salió, no daban los números para el tipo de casa que estaba buscando.

Ya que no salio la compra de otra casa, entonces el siguiente paso es re faccionar la casa que tengo. Ahora voy por el segundo proyecto arquitectónico para hacer una re-estructuración de mi casa.

Este es el plano de como quedará, el diseño es en bruto sin considerar las terminaciones, pero la estructura quedará así:


Ahora anuncian aumento de hierro y escasez de cemento y de nuevo eso me hace pensar en entrar en deudas.

Lo más probable es que no entre en deudas, pero viviré en la casa sin la terminación de los detalles finales, de la parte que estaré haciendo, ya que este proyecto lo realizare en tres partes, según los cálculos como dos años y medio (a no ser que trabaje dentro de un proyecto grande).

Espero la próxima vez estar escribiendo sobre algún "tips" sobre construcciones ;)