SubscribeMainTagsEditHistoryDiscussion (7)

update: Ya publicamos el código : http://freedfd.googlecode.com/svn/trunk/. Esta es la página oficial.

update: parece que llegamos a un acuerdo. habrá una versión gpl de dfd, con el mismo código de la versión 1.0. la otra semana haré la publicación.

Escribo esta página para poder expresar lo que pienso del proyecto Dfd, el porqué no ha avanzado en 8 años, y por que no es fácil que siga avanzando. Muchas personas me han contactado con respecto al tema, y ya me cansé de dar respuestas vagas.

Espero que alguien tenga el tiempo de replicar lo que logramos hacer. Yo no puedo ayudar mucho, debido a que sin saber lo que hacía, desarrollé software privativo, y ahora, siendo uno de los autores, no tengo la libertad de publicar el código fuente, ni de publicar mis modificaciones.

Todo lo que tengo es un binario que no corre en mi máquina porque desde hace mucho tiempo no he necesitado usar Windows (Afortunadamente Dfd corre dentro de Wine).

Confieso que cuando comencé a escuchar a algunos amigos decir privativo y no propietario (ver Software no Libre) pensé que sólo lo hacían por seguir a Stallman.

Stallman suele tener la razón muchas veces, y esta vez me toca decir que lo he experimentado directamente. Soy uno de los "dueños" del programa, y no puedo hacer nada útil con él.

Lo privativo del software no tiene que ver nada con el concepto de propiedad privada. Yo puedo construir una casa sin techo y sin servicios públicos, que aunque sea mía, no la pueda habitar. Y eso fue lo que ayudé a hacer con Dfd sin saberlo.

En 1997 no sabía nada de Software Libre, ni conocía Linux, así que de alguna forma eso me libera de culpa, aunque no de las consecuencias. Hace unos días recibí un correo sobre Dfd, y esta fue mi respuesta:

On 10/9/06, XXXXXX <XXXXX@gmail.com> wrote:

Saludos!

Estoy tratando de mostrar de una manera didáctica como funciona el algoritmo de compresión Lempel-Ziv, su programa Dfd se presta a ello, pero necesito convertir datos string en numéricos (algo así como str2num), lamentablemente dicha función no esta disponible en la versión que presentan.

Hola.

Esta función no es difícil de hacer dentro de Dfd.

En todo caso, sería muy bueno tener una implementación nativa, que use atof(3).

Hay alguna forma de añadirla?

Si, es trivial.

Como podría hacerlo yo si Ustedes no disponen de tiempo?

Pues pregunte a eXXXX@hotmail.com y a f_XXXXXXXX@yahoo.com. Yo no puedo tomar decisiones con respecto a el código.

Atte, Nelson.-

Y tener que responder eso me hace sentir muy triste.

Mi motivación para hacer Dfd fue hacer algo divertido, y aprender. Digamos que en ese proyecto sólo invertimos dinero, y no obtuvimos nada a cambio (reconocimiento). Por mi parte, aprendí mucho con el proyecto.

Pues entiendo que las motivaciones de Eduardo y las de Fabián pudieron ser diferentes, y sus prioridades ahora son diferentes a las mías.

Creo que la posición de Eduardo con respecto al asunto, es que no quiere liberar trabajo propio sin obtener nada a cambio. No la comparto, pero es respetable. El invirtió bastante en el desarrollo de Dfd.

Creo que a Fabián le importa más que el desarrollo de Dfd siga, pero hasta ahora no ha tomado una posición definitiva en el asunto.

En conversaciones anteriores que tuvimos por email, acordamos decidir entre las siguientes alternativas, que son las que veo posibles. Espero que se tome una decisión al respecto, yo ya tomé la mía.

Las alternativas son:

1. Todo Dfd es GPL.

2. Todo Dfd es BSD.

3. Hay un fork, en el que Dfd se divide en dos versiones: Una comercial y una GPL. Yo no estoy interesado en participar en la versión comercial. Lo que quiero decir es que Eduardo y/o Fabián tendrían derechos comerciales sobre Dfd y yo renuncio a cualquier utilidad sobre Dfd. A cambio pido que una copia de lo que ya está se haga GPL. Fabián y/o Eduardo pueden seguir extendiendo lo que ya está y sacar una versión comercial y yo renuncio a cualquier tipo de utilidad sobre esa versión. (Como autores del programa podemos decidir eso, no hay contradicción). La nueva versión GPL cambiaría de nombre a "FreeDFD" y la que está conservaría el que ya tiene.

4. No hay una versión libre de Dfd y el código se archiva.

5. El desarrollo de Dfd seguirá siendo cerrado y queda abierta la posibilidad de sacar una versión comercial futura.

Yo estoy a favor de 1, 2 y de 3, y en contra de 4 y de 5.

Estoy en contra de 4 porque me parece un desperdicio. Y en contra de 5 porque no es mi prioridad ahora y porque no creo tener tiempo para todo lo que implica sacar una versión privativa. Además, creo que ya no podemos decir que podamos hacer un equipo de desarrollo, hemos tomado caminos diferentes y tenemos diferentes prioridades.

Me gustaría que se tomara una decisión antes de que el código sea imposible de compilar, ya que depende de una librería privativa y obsoleta, y de un compilador privativo (afortunadamente gratis).

Por otro lado, no sé si al liberar el código por mi cuenta me expongo a tener problemas legales. No estoy interesado en estos asuntos legales, lo mío es el código. Por esto me cuidaré a futuro y pondré mucho cuidado a las licencias de los programas que haga por hobby.

Dfd no es muy grande, creo que tiene menos de 20.000 líneas de código. Me gustó mucho trabajar en su desarrollo, aunque ahora haría algunas cosas mucho mejor. Hay cosas que me gustan mucho:

Y hay muchas anécdotas que nunca olvidaré para desarrollo de software. Por ejemplo, creo que el pair programming no es carreta. Debido a que no usabamos control de versiones, era usual que nos reunieramos para programar cosas importantes. Cómo teníamos un sólo computador, sólo había un teclado y sólo una persona podía usarlo. Entonces, los que no programaban se armaban de reglas para pegarle al que programaba cuando cometía errores tontos :) Eso era muy divertido.

En estos tiempos, ya no es una opción ser un cowboy : Hay que usar sistemas para control de versiones. Punto.

Espero que logremos llegar a un acuerdo con respecto al código. Yo me divertí mucho trabajando con Dfd, y creo que incluso con los problemas que tiene el programa ahora, muchos se podrían divertir con él.

Hay un proyecto libre interesante, llamado RUR-PLE, que también se puede usar para enseñar a programar. Python es un buen lenguaje.

Loading... Vote up! Vote down! Discussion (7)

Last update: 2007-04-01 (Rev 10985)

svnwiki $Rev: 14721 $