Archivo de la categoría Programación

Sieve en PowerBASIC Console Compiler 6



Tras el anuncio de que Powerbasic es ahora gratuito, y después de los últimos artículos que publiqué relativos a Ejemplo con PB/Forms y a Ejemplo con PB/CC, he estado siguiendo activamente la situación de Powerbasic, para ver cómo evoluciona, esperemos que de manera feliz, y no a mucho tardar, tengamos un Powerbasic 11 con soporte Win64.

Lo cierto es que me topé en la página de testimonios de la compañía, con lo que han bautizado por Friends of PowerBASIC, donde en 2010, me hacía eco de Sieve en BASIC. Si recordáis, era una comparativa donde diferentes compiladores de BASIC, ejecutaban el mismo programa de la Criba de Eratóstenes para calcular números primos.…

Continuar leyendo...

Faltas de ortografía en la AEPD



Hace no mucho os hablaba de los defectos de forma en el enunciado de la Práctica fundamentos de la programación de la UPF. El caso de hoy, me indigna aún más, pues proviene de la Agencia Española de Protección de Datos (AEPD).

Se localiza en la Guía Documento Seguridad, ni más ni menos que la documentación, y la plantilla de documento que se pone a disposición de los interesados, para cumplir con las normativas de seguridad y privacidad que la agencia establece, y que de momento, son de obligado cumplimiento para el tratamiento de datos personales. Como en el caso de la Universitat Pompeu Fabra, no sólo es un problema de imagen que demuestra que nuestros impuestos no se invierten de la forma óptima, sino que además, irradia poca confianza y seriedad.…

Continuar leyendo...

La evolución de FileOptimizer



En FileOptimizer y los logotipos más populares, vimos las mejoras reales que obtiene FileOptimizer.

Además, con cierta regularidad, os voy manteniendo al día sobre su evolución, y os voy contando algunos secretillos. En el artículo de hoy, vamos a ver como ha mejorado el grado de optimización que consigue FileOptimizer.

Aunque la primera versión fue la 0.90 (09/07/2011), por aquel entonces, se distribuía gracias a la colaboración desinteresada de Stephan Busch, por lo que no he podido conseguir esas versiones tan iniciales como habría querido. A partir de la versión 1.65 (03/09/2012) migré los binarios a Sourceforge, y esos si están disponibles.…

Continuar leyendo...

Recuperando programas antiguos: Conclusiones



Después de Recuperando programas antiguos: Los programas y Recuperando programas antiguos: El proceso, dejadme que de paso a algunas conclusiones, o lecciones aprendidas.

Lo primero que he percibido, es que lo que cuentan son las buenas ideas, al punto que nos motiven en su desarrollo. Pero sirve también copiar a los grandes, mejorando aquellos aspectos que no nos acaben de convencer.

En el proceso de aprendizaje, no debemos infravalorar nuestras creaciones. Da igual que fueran pruebas, experimentos, o proyectos inacabados. Con el paso del tiempo, pueden tener un valor emocional importante para ti.…

Continuar leyendo...

Recuperando programas antiguos: Los programas



Continuando con Recuperando programas antiguos: El proceso, vamos a proceder a analizar los programas que he encontrado, y que son parte de mi historia.

Veréis que es muy fragmentario, en unos casos, no todo son las últimas versiones de lo que programé. En otros, son tan últimas, que ni siquiera funcionaban. Cuando ha sido posible, y habían desaparecido los ejecutables, he intentado compilarlos con las herramientas de la época. A saber: Turbo Basic, Quick Basic, Turbo Pascal y Turbo C.

Muchos de ellos, estaban escritos en BASICA y GW-BASIC, por lo que los he guardado en formato ASCII, al menos para que resulten legibles.…

Continuar leyendo...

Recuperando programas antiguos: El proceso



Llevaba unos diez años intentado encontrar una disquetera de 5 y cuarto, las que manejaban disquetes que se llamaban, erróneamente, blandos, de 5,25 pulgadas. Había mirado en tiendas de segunda mano, preguntado a conocidos entusiastas de la informática que llevan tiempo en el mundillo, y nada. Resulta extraño que nadie se haya planteado crear una disquetera de 5,25 pulgadas, con una interfaz USB, pese a que existen de 3,5 pulgadas. Imagino que no hay tal necesidad, y soy de los pocos con interés en rescatar el antiguo material lógico.

Tenemos la costumbre de deshacernos del hardware anticuado.…

Continuar leyendo...

Ejemplo con PB/CC



Cuando escribía Ejemplo con PB/Forms, creo que la conclusión a la que llegasteis es que PowerBasic es un lenguaje bastante tedioso.

Nada más lejos de la realidad, lo que en realidad es tedioso es crear aplicaciones Windows, usando su API, y el bucle de proceso de mensajes. Algo en donde PBForms / DDT ayuda, pero que no es la panacea. Donde en realidad brilla PowerBasic, es precisamente como nos indica su nombre, en otorgar potencia a BASIC, un lenguaje tradicionalmente considerado, no por mi parte, confuso, poco eficiente, y poco potente.

Hay que recalcar que la primera implementación de punteros de verdad (con aritmética) que vi en un dialecto de BASIC, era de PowerBasic.…

Continuar leyendo...

La corta, y tormentosa vida del genio de la computación Phil Katz



Hace ya mucho tiempo, escribía ¿Por qué escribí PGP?, el visionario manifiesto de Phil Zimmermann sobre la privacidad.

Hoy quiero hacerme eco del documento The short, tormented life of computer genius Phil Katz, escrito por Lee Hawkins Jr, que se publicase el 21 de mayo del 2000 en el Milwaukee Journal Sentinel, y que hoy se encuentra eliminado de sus archivos, aunque disponible en algunas fuentes espejo.

Phillip Walter Katz, el que fuera el artífice de compresores de datos, que desde PKARC o PKPAK, llegó hasta nuestros días con el omnipresente formato ZIP, inventado originalmente por él en PKZIP, y lo que fuera su compañía: PKWare.…

Continuar leyendo...

Cosas de headhunters



LinkedIn era a mi modo de ver, la única red social que mantenía su espíritu original. Facebook, se ha llenado de virales absurdos y de publicidad, y Twitter más de lo mismo.

En LinkedIn en cambio, encontrábamos contenidos interesantes, y era una buena forma de mantener el pulso a temas profesionales. Lo primero que percibí, es como empezó a degenerar, llenándose de historias de autobombo. Seguro que habréis leído muchas. Escribo un artículo exagerando mi imagen, la gente me comenta diciendo que soy el mejor (exagerando mi imagen y la suya), yo les digo que en realidad ellos si que son los mejores (exagerando su imagen y la mía), y así sucesivamente.…

Continuar leyendo...

El peligro de gets()



La explicación que daba Pere Martra en su artículo Buffer Overflow para negados. I-Parte, es la más inteligible con las que me he topado. Naturalmente conocía desde hace mucho los problemas de desbordamiento de buffer (buffer overflow o buffer overrun). En los tiempos de DOS, cuando no había protección de memoria a nivel de sistema operativo, lo veíamos a menudo al programar en Turbo C.

Editabas tu programa, lo ejecutabas, aquella magnífica característica que ahora casi todos los entornos de desarrollo tienen, que automáticamente te hacía un make, y te lanzaba el ejecutable. Si había algún problema de overrun o underrun en tu programa, lo notabas porque el IDE acababa desestabilizándose, y tenías que acabar reiniciando MS-DOS (o DR-DOS o PC-DOS).…

Continuar leyendo...

Uso de cookies

Esta web utiliza cookies para mejorar la mejor experiencia de usuario. Si continúas navegando estás dandos tu consentimiento para la aceptación de las mismas y la aceptación de la política de cookies, pincha el enlace para más información.

CERRAR