2007-04-15

El remplazo de Visual Basic?

Desde que recuerdo programo en BASIC, es mi lenguaje favorito por muchas razones, me gusta la sintaxis, me gusta la filosofía del lenguaje, me gusta que sea sencillo y a la vez poderoso (no he encontrado nada que no se pueda hacer con él, como hacerlo es harina de otro costal) comencé a programar en BASIC hace muchos años, con un libro llamado BASIC para Niños era un libro con un personaje gracioso llamado Arturo te enseñaba a hacer ciclos FOR, bloques IF, etc. Todavía recuerdo el primer programa que escribí en mi vida, si, el mismo que todo el mundo:

10 PRINT "Hola!, me llamo Arturo"

Una sola línea de código en el GWBASIC con el número 10 que imprimía en pantalla algo... similar... al Hello World! que todo el mundo escribe. Muchos años después continúe explorando el mundo BASIC pasando por qBASIC del MS-DOS y después Visual BASIC 5 y 6, mi versión de BASIC favorita. En esa época detestaba el lenguaje C con toda mi alma, por varias razones, la primera era que mi papá lo odiaba y me había hablado pestes de él, la segunda y la más importante era que instalé el Microsoft QuickC en mi PC y nunca pude entender por que cuando quería ejecutar el programa con printf("hola mundo\n"); me decía que printf no estaba definida. Para alguien que viene del BASIC eso de los .h y las librerías es Chino Avanzado! Ahora todo tiene sentido para mí pero en ese entonces solo acentuó mi odio contra el C.

Es aquí donde se tuerce toda la historia, pues llegó Microsoft con su Visual Studio.net y sus ganas de ser como Java y se cagó el Visual Basic convirtiéndolo en un híbrido horrible entre C++ y BASIC, un completo chasco y una desgracia para el mundo BASIC, estoy seguro que Bruce McKinney escritor de Programación Avanzada en Visual Basic (Hardcore Visual Basic) estaría de acuerdo con migo, o por lo menos, eso fue lo que dio a entender en la sección "El espíritu del BASIC" de ese libro, la verdad no podría asegurarlo, pues no he vuelto a leer ninguna de sus obras. Las razones de Microsoft "No queremos mas programadores mediocres" (Esto fue dicho en una conferencia celebrada en el Hotel Duruelo de Villa de Leyva, Boyacá, Colombia por Microsoft para la presentación del paquete .net y Microsoft Windows Server 2003 al mundo académico [yo estuve presente allí], aún tengo el libro y la copia de Visual Studio.net que regalaron ese día).

En fin, el caso es que para mi Visual BASIC terminó en la versión 6.0 jamás se lanzó otra versión del lenguaje que tanto amo. Aún lo uso y me rehúso a dejarlo es el lenguaje en que más cómodo me siento. Pero... hay que afrontar lo inevitable, uno no puede quedarse en lo antiguo pues eso lo único que hace es atrasarlo más. Así que... hay que afrontar lo inevitable... hay que aprender C++. No fue muy difícil la verdad, tantos años de BASIC y Windows habían aumentado mi comprensión del mundo de la informática al punto que ya podía comprender que significaba hacer #include y entonces al fin printf("Hola mundo!\n"); funcionó y en la consola apareció "Hola Mundo!"

Momento de migrar a C++, aunque aún era reacio y entonces prinf pasó a ser COUT << "Hola mundo!\n"; que para mi tenía más sentido pues se parecía más al PRINT del BASIC [en ese tiempo no entendía, que COUT era un objeto y no lo vine a entender sino hasta hace poco] luego llegaron los años de colegio y en 11 aprendimos C++ y entonces aumenté mi comprensión del mundo de la programación en C. Luego llego Mario Young quien por todos los medios intentó hacer que programara en C++ con él... ahhh, difícil la cosa pues en ese entonces yo todavía no quería soltarme del BASIC.

Luego llego la Universidad... ahhh que excelente ya por fin tuve en aprendizaje sistemático del C++, lo básico, programación orientada a objetos, estructuras de datos, Java (que siempre complementa el entendimiento de los objetos) y ahora considero que sé bastante de C++ y de la programación por objetos aunque todavía me siento más cómodo programando en BASIC.

Ahora se abren nuevos horizontes ante mí, el sistema operativo Linux es el sistema del futuro y para aquellos que aún estamos a tiempo (aunque un poco retrasados) de entrar en el nuevo paradigma es momento de darnos cuenta de la realidad... si volvemos a caer en el lado oscuro de Microsoft será fatal. Así que... hay que evolucionar, y ¿que ofrece Linux? ¿que más? C++. Así que a programar a punta de APIs ¿no? ¡PUES NO! ¡AL FIN LO HE ENCONTRADO! El sustituto perfecto de Visual BASIC. Lenguaje base C++ multiplataforma con desarrollador de interfases y ¡NO ES JAVA! ¡ES CÓDIGO NATIVO EN TODOS LOS SISTEMAS! Ahhh ¡que bonito se siente decirlo!



¿parecido huh? Si bastante, pero es ¡MEJOR! ¡SI, MEJOR! lo que ves allí con la conexión entre el Clicked() del botón y el Close() de la ventana ¡¡ES TODO LO QUE SE NECESITA PARA QUE LA VENTANA SE CIERRE!! ¿No es impresionante? ¡Es Excelente! ¡Asombroso! Definitivamente es momento de comenzar una nueva vida. Adiós al BASIC, ¡siempre te querré! pero.... es momento de que yo evolucione y tu no me lo permites... XD

Todo esto tan maravilloso es el qt [ http://www.trolltech.com ] Es una librería gráfica multiplataforma que permite crear entornos gráficos de forma sencilla y que correrán en cualquier entorno (he sabido que hay para Linux, macOS y Windows) ¡SIN CAMBIAR UNA SOLA LÍNEA DE CÓDIGO! Ya que es código C++ que es muy portable y que prácticamente está en todos los sistemas. Mientras tengas las librerías necesarias en tu sistema teóricamente puedes simplemente compilar y ya. ¡NO ES QUE ESTO ES TAN IMPRESIONANTE QUE NO ME LO PUEDO CREER! Así que aquí comienza mi viaje a través del terreno por ahora desconocido de la programación Linux, adiós a las ataduras de Microsoft. ¡FREE! ¡AT LAST!

Lo siento... me dejé llevar un poco. En estos días (si me queda tiempo) estaré posteando los pasos para instalar el QT4 en un sistema Kubuntu, (gracias a Mario Young quien me ayudó a mi a lograrlo).

Gracias por leerme.