Programación | Bitácora de Javier Gutiérrez Chamorro (Guti)

Archivo de la categoría Programación

WikiquoteES

WikiquoteES lleva funcionando más de un año, pero acabo de darme cuenta, que no llegué a anunciarlo aquí. Es un sencillo bot que he creado, que sindica en RSS la frase del día de Wikiquote. Es decir, poco más que un parseador HTML escrito en PHP, que obtiene el contenido deseado. Menos de 100 lineas [...]

Mi relación con Pascal

Hace algunos días surgió una conversación en la que varias personas se sorprendían porque siguiera usando el lenguaje Pascal en estos días. Me pareció lo suficientemente interesante como para reflexionar sobre ello, y publicarlo aquí, ya que en lo que a mi respecta, Pascal es un lenguaje que nunca me ha gustado demasiado, que que [...]

FreeMem

Por esas cosas que ocurren de vez en cuando, me he topado con FreeMem, un sencillo “desfragmentador de memoria RAM” escrito en Visual Basic Script (VBS). La idea se me pasó por la cabeza en 2008, cuando con el auge de Windows XP y Vista, seguía habiendo multitud de usuarios que alababan los méritos de [...]

Implatanción de SQLite

Soy entusiasta de SQLite desde hace muchos años, cuando todavía era minoritaria, y acababan de lanzar la versión 2. Me gusta ver como su implantación ha ido progresivamente en aumento. Desde navegadores web que implementan WebSQL y LocalStorage como Chrome, u Opera, hasta Firefox, que además lo utiliza internamente para las URL escritas, y los [...]

Crear índices en campos TEXT o BLOB

Como sabéis, MySQL no permite la creación de índices en campos de tipo TEXT o BLOB ni en sus derivados (TEXT, MEDIUMTEXT, LONGTEXT, BLOB, MEDIUMBLOB, LONGBLOB). Sin embargo, la documentación de CREATE INDEX nos da la pista para hacerlo posible, que es limitar la longitud del valor a indexar. De este modo, y si lo [...]

Radia Joy Perlman

Después de haber hablado de Roberta Heuer Williams, hoy vamos a encargarnos de Radia Perlman, de nombre completo Radia Joy Perlman. Nacida en 1951, es probablemente conocida por haber ejercido de CTO (Chief Technology Officer) en Sun Microsystems, donde llegó a crear cerca de 50 patentes, aunque la compra por parte de Oracle la obligara [...]

¿Por qué FileOptimizer es gratuito y de código abierto?

Recibo algunos emails preguntando porqué FileOptimizer es gratuito y si siempre lo será. Me doy cuenta que cuando hablé de su historia, no expliqué este aspecto. Llevo publicando software estándar desde aproximadamente 1990, y no tardé mucho en darme cuenta que era muy difícil conseguir ingresos vendiéndolo. El creador de 2M, Ciríaco García de Celis, [...]

Intel C++ Compiler

Compiladores de C, existen desde casi los comienzos de los ordenadores, desde 1972, mucho antes de que apareciera el PC de IBM. Sin duda el sector de los compiladores de C, ha sido una guerra cruenta. Sin ir más lejos, benchmarks, y programas que necesitaban un elevado desempeño, se compilaban con Watcom C++ hasta hace [...]

DOS en la actualidad (II)

Pasamos al mundo de aplicaciones que podemos usar sobre DOS: Programación Como decía al principio, es sin duda el punto fuerte de DOS, con buenos entornos de programación para los lenguajes más habituales, y para los que no tanto también. Basic: QuickBasic/Microsoft Basic PDS/Visual Basic, Turbo/Power Basic C/C++: Borland C++ 3.1, Turbo C++ 4, OpenWatcom [...]

Outlaw (II)

Nos planteamos pasar a Watcom C++ 10.5, necesitamos sobre todo menos lío con la gestión de XMS, pero lo que en realidad nos gusta es su rendimiento. Sin embargo, tenemos tanto código específico para Borland de cara a exprimirlo al máximo, y tanto ensamblador en modo real, que hacerlo vendría a ser casi como empezar [...]

Outlaw (I)

En 1995 comenzamos a desarrollar una biblioteca de funciones gráficas para modo 13h de MCGA/VGA (320×200 con 256 colores). Por aquella época lo que más nos motivaba era la prestación pura, así que no es de extrañar que estuviera escrita casi al completo en ensamblador. Las primeras versiones hacían uso del juego de instrucciones básico [...]

Letras degradadas

A mediados de los 90, empezaron a popularizarse en juegos comerciales, y demos, las tipografías degradadas. A principios de 1991, yo ya lo había implementado. Vi diferentes variantes desde las bitono, con la mitad superior de cada letra de un color, y la mitad inferior de otro color, que era requerido en CGA, EGA y [...]

Quick C, Quick Pascal y Quick BASIC

La gama Quick de Microsoft fueron productos para programadores en general bastante efímeros en el tiempo (1985 – 1990), y que se definían por combinar un entorno de usuario amigable, junto con un precio más o menos asequible. Usaban la interfaz de usuario conocida de Works, Edit, Macro Assembler, Fortran, Word, … Integraban la mayoría [...]

Take Command 14

Se ha lanzado la nueva versión 14.0 de Take Command, que a pesar del tiempo, sigue mejorando y actualizándose. La lista de novedades no es muy grande para ser sinceros, y podría ser más una versión 13.10. Aparte de las nuevas funciones que ya son tradición para cada nueva versión, se incluye el nuevo comando [...]

Turbo C, el entorno agradecido

De mediados de los 80, y casi durante 10 años, la mayoría de juegos comerciales se desarrollaban en todo o en parte usando Borland Turbo C. En 1986, y coincidiendo con el lanzamiento de Turbo C 1.0, C representaba un lenguaje conocido, potente, y con fácil acceso al hardware del sistema, que lo hacía ideal [...]

RawCopy, Neverlock y Locksmith

Si durante los 80, el enfoque para atacar las protecciones anticopia en el software de PC eran los copiones o copiadores como Copywrite y Copy II PC, enseguida se vieron limitados por nuevas protecciones anticopia, y que ya no siempre estaban vinculadas al soporte físico que era lo que estas herramientas conseguían saltarse. Las nuevas [...]

Encriptador Xor en Javascript

En los años 80 y 90 con una potencia de proceso más que limitada, los algoritmos de tratamiento de datos que se usaban eran sencillos en concepto, y eficientes en implementación. Así se comprimía y descomprimía información usando variantes de Run-length encoding (RLE) o Lempel–Ziv–Welch (LZW), se encriptaba usando el algoritmo de César el de [...]

MariaDB

En el artículo de decadencia de MySQL que escribí hace casi 2 años, comenzaba a anticipar lo que el tiempo nos ha ido confirmando, y es que MySQL parece un producto estancado a raiz de la compra primero por parte de Sun, y sobre todo posteriormente por parte de Oracle. En el lado opuesto, MariaDB [...]

MSX y Microsoft

El estándar MSX de 1983 que pretendía unificar el mercado de microordenadores de 8 bits, fue impulsado por Kazuhiko Nishi, por aquel entonces, director de ASCII Corporation, pero al mismo tiempo, vicepresidente de Microsoft en Japón. Estaba claro que con el IBM-PC, como plataforma general en 16 bits, dónde Microsoft ya tenía una buena posición [...]

Opera 12, el navegador que lo tendrá todo

Opera lleva más trabajando largo tiempo en su nueva versión 12, cabe recordar que la primera versión alfa, tiene más de 6 meses. Y es que si el desarrollo se está retrasando más de lo esperado, también es cierto que cuando salga a la calle, será en mi opinión el navegador más completo del mercado. [...]