código escrito · artículos digitales de informática
 
Entrevista a Bruno Cantero
23.07.2003 :: Jaime Irurzun

Muchos programadores cuando han pensado en dejar o incluso han dejado Clipper, han pensado en Delphi como primera opción. Sin duda C3 puede ser la herramienta perfecta, ya que su compilador sigue siendo Clipper pero a 32 bits y su GUI está basada en la VCL de Borland. Tal vez esto permita recuperar muchos antiguos Clipperos que migraron a Delphi…

Que el tiempo lo decida.

Hoy Bruno Cantero, el creador de C3, nos concede a todos una entrevista en exclusiva para este weblog.

Hola Bruno, ¿cómo estás llevando estos días el desarrollo de C3?
Bien, muy atareado poniendo en marcha el dominio c3compiler.com, el servidor web, el servidor web seguro, las news, el correo, en fin, todo lo que debe llevar. En las páginas nuevas, hay un área de descarga donde se puede obtener la última RC5 y las modificaciones posteriores, además de una página de errores detectados y así poder hacer un seguimiento de estos errores. Todas las páginas de C3 tienen impresa la fecha de la última actualización con lo cual basta entrar a la página principal para saber si ha habido cambios.

En el foro te hemos leído decir al principio que la versión 1.0 de C3 saldría al mercado a finales de Agosto 2003, pero más tarde comentaste que podría estar para principios… teniendo en cuenta cómo llevas el desarrollo hasta hoy, ¿para cuándo calculas que estará disponible la versión 1.0?
Al principio no tenía fechas, después de la reunión en Madrid del GO2000, la gente empezó a decirme que no publicara más betas ya, que pusiera una fecha de lanzamiento y listo. Así lo he hecho, será en Agosto, cuando la web esté operativa del todo, no se si a principios, mediados o finales, pero realmente falta muy poco. Lo importante no es cuándo será el lanzamiento, sino saber que C3 es un proyecto que avanza, que ahora tiene unos objetivos, mañana serán el IDE y la GUI y luego, quíen sabe? Los usuarios no deben ver la fecha de lanzamiento como un antes y un después, deben saber que C3 seguirá mejorando cada días más y los usuarios tendrán derecho a todas las actualizaciones, no se van a quedar colgados con una versión determinada.

Sabemos que C3 lo tendrá todo: Compilador, Enlazador, GUI e IDE. ¿Qué incluirá exactamente esta versión de Agosto y a qué porcentaje de desarrollo estará cada parte?
Al compilador le faltan las casi todas las funciones del modo 'texto', y será así hasta que me ponga a diseñar toda la librería Terminal32.lib, que contendrá todas las funciones para manejar la aplicación en modo 'texto'. También le faltan tres funciones matemáticas, Log(), Exp() y Sqrt(). Los índices DESCENDING en el driver NTX no están implementados y en el driver CDX las funciones OrdKeyCount() y OrdKeyNo() no soportan los scopes con el SET FILTER TO activado. Por separado funciona correctamente. El IDE y la GUI están como hace un mes, y no se si me dará tiempo antes de Agosto hacer más, pero será la tarea prioritaria después del lanzamiento. El compilador de recursos está casi completo, soporta casi todos los controles normales y el enlazador está al 99,9% me falta obtener unos valores que van en la cabecera del ejecutable.

Lo que falte, ¿cuándo crees que podrá estar terminado?
No lo se, depende de cómo se den las cosas, del tiempo que lleve cada una de ellas, pero desde mi punto de vista, poniendo en una balanza el trabajo ya realizado y lo que falta, es muchísimo menor lo que queda por hacer, lo difícil ya está. Podría aventurarme a afirmar que si he tardado unos ocho o nueve meses en llegar hasta aquí, antes de final de año estaría todo completo.

¿Quiénes compren en Agosto la versión “incompleta”, tendrán que volver a pagar por la versión 1.0 completamente terminada?
No, ni mucho menos, el usuario de C3 no tendrá que volver a pagar por ninguna actualización.

¿Habrá más de un tipo de versión disponible para C3?
A la hora de comprar si, he pensado en tres, según el modo de envío, pero ninguna de ellas tiene más cosas que las otras, simplemente varía si se envía por correo electrónico, si se envía un CD o si se envía un CD y manual impreso y encuadernado.

Hay gente que está pidiendo que sin perder la compatibilidad con Clipper, implementes mejoras desde el principio… ¿prefieres alcanzar antes que nada la compatibilidad absoluta al 100% y luego que venga lo que tenga que venir, o ves viable comenzar a mejorarlo desde ya tal y como pasó con xHarbour?
No tengo ningún inconveniente en mejorar C3 con tecnologías nuevas, de hecho estoy seguro que habrá que mejorarlo pero lo que no quiero hacer es dejar atrás lo básico y dedicarme a pensar en cosas nuevas.

¿Qué ventajas ofrecerá la reciente implementación del motor de objetos Objects?
Ventajas? Es Objects, está cedido por su autor y tiene las ventajas de Objects 4, un motor de clases muy bueno y probado. Yo simplemente lo he portado a 32 bit's, como haré con otros productos de terceros.

El desarrollo de "Fivewin para C3" por parte de FiveTechSoft está siendo sin duda una gran baza para C3. Esto atraerá a muchos programadores. Sin embargo, ¿crees que puede influir en que haya gente que por comodidad o por otras razones se acomode a seguir con su GUI de siempre (Fivewin) y la GUI de C3 pierda fuerza? ¿Por qué decidiste liberar la GUI de C3?
Está claro que C3 se está haciendo hueco en el mundo de xBase y Antonio Linares ha considerado rentable adaptar FiveWin a C3, me parece correcto y yo quisiera que 'todos' los productos se adaptasen a C3 también. Indudablemente esto dará un empuje mayor a C3, y cuantos más productos haya mejor para C3 y sus usuarios. Insisto en que yo apoyaré a cualquiera que necesite ayuda para portar su producto, es rentable para su autor y para mí. La GUI de C3 es otra alternativa, otra forma de programar, no tiene nada que ver con FiveWin. No crees que con todos los problemas que ha pasado la gente al pasar de 16 bit's a 32 bit's y los que tienen todavía, las dudas, los problemas de por dónde tirar, etc, esa gente se merece la oportunidad de tomar su aplicación Clipper+FiveWin y 'recompilar' con C3+FiveWin y tener una aplicación de 32 bit's sin más? Yo creo que si, que se lo merecen. El hecho de liberar las fuentes de la GUI es para que se aprenda a hacer controles, qué mejor referencia que algunos ficheros de las fuentes originales? Son libres y se pueden usar para lo que se quieran. Esto no implica que si la GUI avanza o se mejora, ve vayan a publicar todas las fuentes. La idea es que se 'aprenda' ha extenderla y mejorarla. Ya hay más de una persona que se ha aventurado a hacer algún control.

Actualmente C3 tiene completamente desarrollados y a prueba de BUGs los drivers NTX y CDX nativos. ¿Piensas implementar algún otro RDD como por ejemplo MDX o NSX?
El driver MDX no lo he usado nunca, no sé cómo funcionan sus algoritmos de compresión, al igual que los NSX. El motivo principal para incluir el driver NTX fue porque ha sido el driver por excelencia de Clipper hasta la incorporación del driver CDX y porque pensé que era mejor empezar por el más simple que entrar de lleno con el driver CDX. Luego continué con el driver CDX que es el más extendido. No tengo pensado implementar ninguno otro de momento. O por lo menos como parte integrante de C3. Se que hay gente trabajando ya en un driver para acceder a MySQL y mi intención es apoyarles lo máximo posible.

Vista la impresionante velocidad y calidad con la que ha sido desarrollado hasta ahora C3, muchas personas creen realmente que no duermes, que estás las 24 horas del día programando. ¿Te ha impedido esto dedicarle tiempo a la documentación? ¿A qué nivel y en qué versión estará incluida?
La documentación es un tema que no me gusta nada, como le pasa a muchos programadores, a la hora de hacerla nos auto-inventamos excusas, pero la de C3 estará. Al principio contará con una documentación básica, más o menos como la de Clipper, después la iremos completando con ejemplos de uso y detalles más técnicos. También se hará una documentación para el uso del IDE y de la GUI. Pero insisto en que los usuarios de C3 tendrán acceso a todas estas mejoras sin coste adicional, con lo cual bastará estar un poco atentos a las noticias y cuando se publiquen los archivos correspondientes se podrán actualizar de inmediato.

En la web de la Asociación Olivares 2000 hay una encuesta sobre el tipo de herramienta xBase que prefiere la gente. En estos momentos, se prefiere por un 69,77% tener un compilador generador de OBJs (lo que es Clipper) con GUI e IDE integrados. Sólo C3 ofrece esto ahora mismo…
Yo así lo entiendo, qué mejor forma de trabajar que con una sola aplicación? Desde un mismo entorno editar código, diseñar visualmente, compilar, depurar, etc. Es como hace años, cuando se usaba el WordPerfect o el WordStar en modo texto y luego pudimos optar por programas en modo gráfico, donde realmante se veía el aspecto final del documento, aquí pasa lo mismo, lo ideal es diseñar visualmente o escribir código y poder probarlo inmediatamente, sin estar usando una herramienta distinta para cada tarea.

Por último…¿qué les dirías a todas esas personas que siguen indecisas acerca de qué herramienta utilizar? La oferta es bien amplia.
Que prueben C3, que no tienen que pagar por hacerlo, sólo emplear un poco de su tiempo.

Muchas gracias por estos minutos que seguro que servirán para aclarar un poco las mentes de mucha gente. Y suerte con C3.
Gracias a ti por darme la oportunidad de explicar un poco más algunos aspectos de C3.

comentarios (7) |


Comentarios del artículo
1 · William Morales · 23.07.2003

Que bueno que este pensado para los que no tenemos definido el salto a los 32 bits.

Saludos y suerte

2 · Jinme Mirabal · 24.07.2003

El desarrollo de C3 es una cosa que me ha sorprendido sobremanera, ...el camino? Esta muy bien tomado, hacerlo 100% compatible con Clipper antes de implementar nuevas tecnologias. FiveWin? No lo uso, ni creo que lo use a futuro, para eso estara el IDE del C3 ;) Los Rdd implementados?, suficientes hasta ahora, aunque MySQL seria otra excelente opcion. Extrañaba los OBJ's del Clipper, cuando pase a 32bits con [x]Harbour, ahora me vuelve el alma al cuerpo. C3 Todo integrado, Compiler, GUI e IDE. Te felicito Bruno, continua asi!!!

3 · Fredy · 24.07.2003

Estoy básicamente de acuerto con todo, salvo quizás con el tema de los Rdd.

Creo que un rdd que permita usar ADS es fundamental desde el primer momento, ya que la forma más cómoda y sencilla de acercarnos a los sistemas cliente-servidor.

Los cdx nativos de C3 son más una demostración de capacidad por parte de Bruno (que ha logrado en unos meses lo que harbour intenta desde hace años) que una ventaja (o una necesidad) como tal.

Una de las claves de decisión entre C3 y harbour va ha ser sin duda la posibilidad de ofrecer a nuestros clientes el valor añadido de que su aplicación corra en modo cliente-servidor. Algo que en harbour podemos conseguir relativamente fácil, pero en C3 de momento se plantea imposible.

Desde mi punto de vista, si bien es fundamental la compatibilidad clipper 100%, hay que pensar en qué le falta a clipper como compilador (no como Gui) para ser un lenguaje de programación "actual", y sin duda es el acceso a datos, tanto sql como cliente-servidor. Esto es algo que creo que el equipo de xHarbour tiene muy claro, y ya se ha lanzado a ofrecernos rdd de acceso a sql, nsx, etc..

4 · Miquel · 24.07.2003

Se supone que los RDD que para Clipper incorporaba ADS deberían funcionar también con C3; sin embargo pienso, como Freddy que un soporte amplio para el RDD de Advantage no estaría nada mal para poder aprovechar las ventajas que ofrece y la optimización de velocidad que tiene. Además, las mejoras en la zona de 32 bits para entrar en redes locales y redes por internet son muy apetecibles.

También sería interesante la posibilidad de migrar C3 a Linux.

Por lo demás, me gusta C3: si Bruno lo planteó como un Clipper compatible a 32 bits, los ejemplos de la C5, los modelos del IDE y el GUI se lanzan con una sintaxis orientada a objetos y se abandona la falsa ilusión de la sintaxis 'natural' de comandos de Clipper. Y esto es lo que mejor veo.

5 · Pablo Medel · 24.07.2003

A pesar de que no he podido concluir mis conversiones de algunas aplicaciones pequeñas en clipper-CGI (que es lo que mas necesito en este momento), veo que C3 es una buena herramienta para todos los clipperholicos.

6 · Mulato · 25.07.2003

Si C3 sera un compilador de 32 Bits, GUI e IDE tal vez podriamos compararlo al VO 2.6 actual ...

En que será mejor ?

VO en los temas IDE, RDD y GUI lleva una delantera bien probada y depurada en estos ultimos años, un demo de 30 dias puede bajarse desde: http://www.cavo.com/trial/

Asi que sin animos de crear una controversia, alguien puede decir en qué será C3 mejor que VO ?

7 · Jose Antonio Albarracin · 24.08.2003

No hay duda que C3 es una alternativa muy buena para desarrolladores de xbase caso especifico clipper, con una enorme ventaja pasar de 16 a 32 bits con una recompilacion de fuentes, ademas como Bruno lo indica, permitira mejorarlo a medida que pase el tiempo. Excelente la idea de utilizar OOP, sin embargo pienso que Bruno deberia tener en cuenta seguir mejorando este producto he incluir manejo de comandos SQL ANSI, que le de mas libertad a nosotros los programadores para no limitar con comandos que hoy en dia son obsoletos en funcionalidad en aplicativos cliente/servidor. No quiero decir que no sirvan pero los comandos tipos SQL son mas eficientes a la hora de hacer una tarea especifica.














































Creative Commons - Jaime Irurzun y Aitor Martin