Argumentos tendientes a que los componentes usados en ejecución por aplicaciones GeneXus sean de código abierto.
Desde hace bastante tiempo, hay un movimiento (clandestino y formado por al menos una persona) en la comunidad GeneXus para que los fuentes de los componentes de tiempo de ejecución (runtime) utilizado dentro de las aplicaciones GeneXus, sean provistos con sus fuentes.
Que se persigue con esto?. El objetivo es contar con los fuentes de las GxClass* (para el acceso a datos), Report Viewer, GXUtil y utilitarios usados por las aplicaciones GeneXus.
Los argumentos a favor para tener esto serían:
Ayuda en la determinación de problemas.
Cuando nuestra aplicación GeneXus, cancela en alguno de dichos módulos, es difícil saber que es lo que esta pasando y cual es la causa del error. Si se tienen los fuentes, es mucho mas fácil determinar que es lo que esta fallando y por lo tanto poder solucionarlo. Esto podría hacer que muchas de las llamadas a soporte no fueran tan urgentes, pues se podrían solucionar los problemas y reportarlos con mayor tranquilidad.
Evitar discusiones con clientes.
Al poder dejarle TODOS LOS FUENTES de la nuestra solución se podrían evitar suspicacias de algunos clientes que indican (con algo de razón) que la aplicación generada con GeneXus tiene módulos que ellos no saben lo que hacen o que tiene "runtime".
Como argumento de venta de GeneXus y aplicaciones generadas con dicha herramienta.
Lograr que una organización grande compre una aplicacion desarrollada con GeneXus, siempre viene precedida de la pregunta:
_ ¿Que hago si el dia de mañana GeneXus o Artech no existen mas o son comprados por una empresa mayor?
Mi respuesta siempre es: en ese caso (que sería el peor de los casos) se pueden quedar con la aplicación generada en el lenguaje que ellos elijan (java, .net, etc) y mantenerla por los medios tradicionales. Si re-preguntan si se van a tener todos los fuentes (y siempre hacen esa pregunta) me quedo sin argumentos.
Posibilitaria tener aplicaciones GeneXus OPEN SOURCE.
Al tener todos los fuentes de la aplicación, la misma podría subirse a repositorios públicos de fuentes para que otros la compilen y utilicen, aunque no tengan GeneXus. Creo que esto posibilitaria que otros vieran el tipo de aplicaciones que pueden programarse con la herramienta.
Para la incorporación de mejoras.
El tener los fuentes y tener necesidades a resolver, posibilitaria que se puedan programar o sugerir mejoras en las rutinas de acceso, que en el futuro podrían incorporarse en nuevas versiones de estos utilitarios.
Por ejemplo, si se tuviera los fuentes del Report Viewer, alguien podría haber programado una opcion para mandar un reporte por mail, o exportar a Excel, que podría haber servido a mas de uno en la comunidad. Conozco empresas que han modificado las GXclass para incorporar auditoría o modificar sentencias a ejecutar.
No es para todo el mundo, pero con pocos que aporten, podríamos ir mas rápido.
Para entender mejor como funciona la aplicación.
Al entenderla mas, podríamos programar diferente para que no tuviera errores o funcione mas rápido.
Porque lo prometido, es deuda
El argumento de que los fuentes están desprolijos es poco defendible. Si está mal programado, es mejor conocerlo para poder ayudar a corregirlo o esquivarlo, pues nuestras aplicaciones dependen de dicho codigo. Si está bien programado, podemos aprender del mismo.
Para no escribir post como este.
Si se tuvieran todos los fuentes, yo estaría jorobando con otra cosa y no con esto.
Resumiendo, creo que sería muy bueno contar con los fuentes. Supongo que debe haber varios argumentos válidos en contrario pero no los conozco.
Que se persigue con esto?. El objetivo es contar con los fuentes de las GxClass* (para el acceso a datos), Report Viewer, GXUtil y utilitarios usados por las aplicaciones GeneXus.
Los argumentos a favor para tener esto serían:
Ayuda en la determinación de problemas.
Cuando nuestra aplicación GeneXus, cancela en alguno de dichos módulos, es difícil saber que es lo que esta pasando y cual es la causa del error. Si se tienen los fuentes, es mucho mas fácil determinar que es lo que esta fallando y por lo tanto poder solucionarlo. Esto podría hacer que muchas de las llamadas a soporte no fueran tan urgentes, pues se podrían solucionar los problemas y reportarlos con mayor tranquilidad.
Evitar discusiones con clientes.
Al poder dejarle TODOS LOS FUENTES de la nuestra solución se podrían evitar suspicacias de algunos clientes que indican (con algo de razón) que la aplicación generada con GeneXus tiene módulos que ellos no saben lo que hacen o que tiene "runtime".
Como argumento de venta de GeneXus y aplicaciones generadas con dicha herramienta.
Lograr que una organización grande compre una aplicacion desarrollada con GeneXus, siempre viene precedida de la pregunta:
_ ¿Que hago si el dia de mañana GeneXus o Artech no existen mas o son comprados por una empresa mayor?
Mi respuesta siempre es: en ese caso (que sería el peor de los casos) se pueden quedar con la aplicación generada en el lenguaje que ellos elijan (java, .net, etc) y mantenerla por los medios tradicionales. Si re-preguntan si se van a tener todos los fuentes (y siempre hacen esa pregunta) me quedo sin argumentos.
Posibilitaria tener aplicaciones GeneXus OPEN SOURCE.
Al tener todos los fuentes de la aplicación, la misma podría subirse a repositorios públicos de fuentes para que otros la compilen y utilicen, aunque no tengan GeneXus. Creo que esto posibilitaria que otros vieran el tipo de aplicaciones que pueden programarse con la herramienta.
Para la incorporación de mejoras.
El tener los fuentes y tener necesidades a resolver, posibilitaria que se puedan programar o sugerir mejoras en las rutinas de acceso, que en el futuro podrían incorporarse en nuevas versiones de estos utilitarios.
Por ejemplo, si se tuviera los fuentes del Report Viewer, alguien podría haber programado una opcion para mandar un reporte por mail, o exportar a Excel, que podría haber servido a mas de uno en la comunidad. Conozco empresas que han modificado las GXclass para incorporar auditoría o modificar sentencias a ejecutar.
No es para todo el mundo, pero con pocos que aporten, podríamos ir mas rápido.
Para entender mejor como funciona la aplicación.
Al entenderla mas, podríamos programar diferente para que no tuviera errores o funcione mas rápido.
Porque lo prometido, es deuda
El argumento de que los fuentes están desprolijos es poco defendible. Si está mal programado, es mejor conocerlo para poder ayudar a corregirlo o esquivarlo, pues nuestras aplicaciones dependen de dicho codigo. Si está bien programado, podemos aprender del mismo.
Para no escribir post como este.
Si se tuvieran todos los fuentes, yo estaría jorobando con otra cosa y no con esto.
Resumiendo, creo que sería muy bueno contar con los fuentes. Supongo que debe haber varios argumentos válidos en contrario pero no los conozco.
Enrique.
ResponderBorrarYo soy también sor partidario de tener los fuentes de todo.
Hace un par de años atras lo veía como imposible que Artech hiciera algo así. Hoy no lo veo tan lejos, ya que se han abierto algunas puertas (pattern, extensiones, etc) y el resultado ha sido muy bueno.
Crucemos los dedos.
Abrazos
Enrique, los fuentes de los componente de run-time están disponibles para todos los que los quieran obtener. Estamos trabajando (lento) para publicarlos "oficialmente" y que esto se haga más fácil. De todas formas, todo aquel que quiera los fuentes, los pide y se los entregamos.
ResponderBorrarEnrique, estoy totalmente de acuerdo con los beneficios de tener los fuentes.
ResponderBorrarAdemás evita que algunos miembros de la comunidad tengan que decompilarlos para poder encontrar bugs e incluso corregir alguno cuando no es posible esperar a la corrección de un SAC que quizá nunca llegue.
También es muy bueno saber que ya se está pensando en una forma de liberar los fuentes, en este punto sería muy interesante tener acceso a algún CVS o SVN para poder ver los cambios entre distintas versiones y tener siempre accesso al último snapshot.
Saludos
GP@GX, que bien!
ResponderBorrar¿Con quién hablamos para tener los fuentes?
Gracias
Pd. Buen post Almeida!
Enrique
ResponderBorrar1) ¿ Puedo ser el segundo integrante del movimiento clandestino ?
2) Para mi, este es el mejor post en la historia de tu blog
GP@GX
1) En el último encuentro GeneXus me enteré de casualidad que si pedías los fuentes te los daban. ¿ Pero hay necesidad de que los desarrolladores nos tengamos que enterar "de casualidad" de esto ?
¿ Porque esta información no está en ningun lugar ?
2) lo de "lento" me da miedo...
Conclusiones:
1) No importa "Que" es lo que uno diga, lo importante es "Quien" lo dice.
Es notable la diferencia que hay en las opiniones de las personas cuando el que dice algo es una persona conocida y respetada a cuando alguien a quien no conoce nadie dice lo mismo.
Ricardo:
ResponderBorrarPor suerte hemos avanzado en este aspecto y estamos cerca de lograr tener los fuentes de todos los programas para todas las versiones.
Gustavo:
Conozco que existe por parte de Artech la voluntad de brindar los fuentes a quienes los necesitan. El motivo del post es tratar de dar algunos argumentos y mostrar que todos las necesitamos, aunque no esten en nuestros planes modificarlas.
Pablo:
Yo me conformo con una pagina en el wiki, donde por cada version/upgrade se tenga un zip con los fuentes. Se acudiria ahi en caso de emergencia.
Andres:
Por lo que me comentó GP@GX en un mail, alcanza con pedirlo en Soporte.
Me alegro que te gustara el Post.
Diego:
El movimiento sigue juntando adherentes.
Yo creo que hay post mejores.. pero bueno.
No entendi tus conclusiones
A todos:
Gracias por los comentarios!.
Enrique:
ResponderBorrarMe refiero a que cuando en el foro yo digo algo con respecto a abrir los fuentes de algunas partes de GeneXus como maximo recibo una respuesta a mi mail personal (no al foro) con un texto del tipo "Estoy de acuerdo con lo que decis pero no lo mando a la lista para evitar discuciones"... como con miedo de vaya a saber uno que.
Ni que hablar que jamas ningun integrante de Artech se digno a hacer un comentario sobre el tema.
Gracias a dios, personas como vos a las que Artech toma en serio tambien hablan del tema.
Saludos.
Me dieron los fuentes de GXClassr y ReportViewer despues de pedirlos en soporte de Artech, para el Upgrade 4 de Java de GeneXus 9.0.
ResponderBorrarAlgo que Artech debería hacer (preferentemente antes de publicar los fuentes) es que dejar claro sobre que tipo de Licencia estarán regidos los mismos.
ResponderBorrarLa licencia debería definir además el proceso por el cual se aceptan las mejoras al mismo (y si se aceptan modificaciones al original o crear distribuciones particulares y ese tipo de cosas).
Se que es complicado definir bien ese tipo de cosas, pero es preferible pensarlo bien antes de hacerlo.
Puede llegar el día en que existan N distro's diferentes siguiendo su propio roadmap y libres para cualquier persona.
También existe el tema de permitir distro particulares, y el caso especial en que sea o no la distribución o comercialización de esas versiones especiales (que terceros lucren con su versión modificada o cosas similares).
Me imagino que este tipo de cosas ya hace tiempo que ronda por esos lados, seguramente si deciden realizar una publicación "formal" de los mismos tendrán pronto el tipo de licenciamiento permitido.
@David Giornado: Probablemente GP@GX con lo de que estan trabajando "lento" se referia precisamente a eso, hay que definir una cantidad de cosas como las que tu comentas antes de liberar oficialmente los fuentes de los runtime, ojalá y nos den la sorpresa pronto.
ResponderBorrar@EAlmeida: Muy buen post, yo no sabia que podias obtener los fuentes si los solicitabas, gracias por la info.
Salu2
@EAlmeida,
ResponderBorrarSimplemente Excelente e ingenioso tu POST, por qué demora tanto uno de enterarse las cosas buenas?.
@GP@GX, Ok. Creo que pornto les solicitaremos, los fuentes, estoy en un proyecto, en el que hemos prometido TODOS los fuentes, pero no sabía que estabamos cometiendo un error...
:-( ,
Gustavo, I concord con Enrique y los que opinan que debería haber comunicaciones OFIALES en este y unos cuantos temas que son polémicos, y que sería más tranquilizador, o esclarecedor contar con ello. Adelalante!, siempre los estamos esperando.
Diego Rostagnol,
Un amigo, me ha comentado, que que puede conocer a un tipo que dijo saber de alguien que podrían contar como al 3er. Integrante de esta red subterranea, éste amigo no "hizo nombres" pero creo que le diré para que que los contacte para unírseles, y hacer el bien común.
Diego, con respecto a ser escuchado por "Quien" y no por "que" se dice, es una problemática filosófica eterna, Jose Lamas Rios (quien) hablo de ello en el encuentro pasado, sobre las falacias, igualmente, ya sos uno de los tipos que quiero que escriba y quiero escuchar en los foros. ;-) . De alguna forma, eso tiene sus razones.
Saludos,
gab
@EAlmeida,
ResponderBorrarSimplemente Excelente e ingenioso tu POST, por qué demora tanto uno de enterarse las cosas buenas?.
@GP@GX, Ok. Creo que pornto les solicitaremos, los fuentes, estoy en un proyecto, en el que hemos prometido TODOS los fuentes, pero no sabía que estabamos cometiendo un error...
:-( ,
Gustavo, I concord con Enrique y los que opinan que debería haber comunicaciones OFIALES en este y unos cuantos temas que son polémicos, y que sería más tranquilizador, o esclarecedor contar con ello. Adelalante!, siempre los estamos esperando.
Diego Rostagnol,
Un amigo, me ha comentado, que que puede conocer a un tipo que dijo saber de alguien que podrían contar como al 3er. Integrante de esta red subterranea, éste amigo no "hizo nombres" pero creo que le diré para que que los contacte para unírseles, y hacer el bien común.
Diego, con respecto a ser escuchado por "Quien" y no por "que" se dice, es una problemática filosófica eterna, Jose Lamas Rios (quien) hablo de ello en el encuentro pasado, sobre las falacias, igualmente, ya sos uno de los tipos que quiero que escriba y quiero escuchar en los foros. ;-) . De alguna forma, eso tiene sus razones.
Saludos,
gab