El uso de las letras minúsculas en la computación no son
ciertamente una consecuencia de las microcomputadoras, de hecho ya se
empleaban esporádicamente en algunas computadoras, inclusive sus
códigos se habían estandarizado en 1967 (documento USASCII
X3.4-1967 y USASI X3.4/428-1968); pero su empleo generalizado jugó un
papel determinante en el desarrollo del software para las
microcomputadoras.
Seguramente algunas de sus principales aplicaciones, entre ellas la edición de documentos, no tendrían lugar sin el concurso de las minúsculas.
Uno de los principales aspectos referente a la calidad de las terminales
e impresoras fue la estética de sus letras minúsculas.
Aunque la evolución del software para las microcomputadoras
presenta paralelismos en casi todos los aspectos con la evolución
que registró el software de las primeras computadoras,
hubo un detalle de considerable valor. Los primeros programas en las
grandes computadoras que existían. Estas disponían de
sistemas de desarrollo que consistían fundamentalmente en
ensambladores de paso (cross assemblers) y simuladores, programas
que emulaban la ejecución del programa en el equipo de desarrollo.
Generalmente, estos sistemas provocaron el desarrollo para el software; se
operaban en enormes computadoras a través de los sistemas de tiempo
compartido, en algunos de los casos, por medio de redes
telefónicas. Inclusive, algunos de estos sistemas fueron proporcionados
como un servicio adicional para promover la
venta de sus productos, por los fabricantes de los circuitos
integrados.
Tal es el caso de TYMNET, para el desarrolló de programas
para los circuitos de Intel y NCSS para los de National, disponibles
en sistemas de tiempo compartido en computadoras General Electric.
Tampoco faltaron estas facilidades para los clientes de Motorola.
Algunas universidades desarrollaron programas en sus
computadoras para facilitar el desarrollo de programas para las
microcomputadoras. Con empleo de los ensambladores y simuladores,
se desarrollaba el programa para la microcomputadora que posteriormente
se deposita en memorias ROM (Read Only Memory) para su uso final.
Las primeras aplicaciones consistieron en programas de control para
conmutadores telefónicos, semáforos, máquinas de escribir,
máquinas y herramientas industriales, instrumental de laboratorio
y equipos periféricos para computadoras: terminales de video,
impresoras, graficadores, controles de disco, controles de cinta y otros.
Al aparecer la primera microcomputadora popular, la Altair
8800, la programación se realizó por medio de los interruptores
y switches que incluía su panel frontal. Con todo el entusiasmo
que la efervescencia producía, algunos fanáticos en Berkeley
y en otras universidades desarrollaron -con el solo recurso de los switches
y luces- pequeños monitores interactivos para el desarrollo de programas
con el uso de teletipos y terminales de video y con el empleo de notaciones
más compactas que el binario. La experiencia no resultó vana, el uso de los
switches les permitió una mejor comprensión de las capacidades y
potencialidades de los equipos.
Estos primeros programas utilizaron inicialmente las cintas
de papel de los teletipos para almacenar los datos y programas y
posteriormente, los cassettes de audio. De manera natural, aparecen
numerosas versiones de programas editores y ensambladores -para uso en
las microcomputadoras- que se distribuían por medio de la cinta de cassette.
Con la participación de William Gates en MITS, la Altair 8800
incorporó en poco tiempo un interpretador de Basic entre su repertorio de
programas de servicio. Al parecer, el Basic de Gates fue desarrollado con
el empleo de un sistema de desarrollo disponible en alguna microcomputadora,
como parte de un proyecto académico y con el modelo de las versiones
( de Basic ) disponibles en otros equipos.
Había otros lenguajes de programación como candidatos para
usarse en las microcomputadoras además del Basic, se especulaba con Forth,
APL y Fortran. Es verdad que algunos de ellos resultaron demasiado concisos
y taquigráficos, otros carecían del aspecto interactivo. Sobra decir que
las especificaciones del formato de Fortran representaron un verdadero
obstáculo para su elección.
A pesar de que Ed Roberts, fundador de MITS, se atribuye (y
por ello ha recibido múltiples regaños y algunos reproches) la
elección de Basic como el lenguaje de programación para las microcomputadoras,
muy probablemente esta elección -por los usuarios y no por Roberts- fue
consecuencia de sus características interactivas, de la simplicidad con
que permite la descripción y edición de resultados y particularmente,
por la amplia difusión que tenía este lenguaje en los medios
universitarios a finales de los 60's.
Basic fue elegido en forma unánime, a pesar de los esfuerzos
que algunas empresas y sectores realizaron para popularizar otros
lenguajes.
En uno de los primeros números de la revista BYTE realizó un esfuerzo por popularizar
a Pascal. Posteriormente, los esfuerzos se orientaron en dirección de otros
lenguajes como Modula y Prolog. Finalmente, Pascal adquirió importancia,
sin llegar a desplazar al Basic.
El Basic de Gates fue la única versión disponible, la revista
Dr. Dobb's publicó en sus primeros tres números -con un formato de tabloide-
otra versión del lenguaje. Por su parte, la revista BYTE
distribuyó otra versión en un disco como una forma de promoción. El
disco se colocaba en una tornamesa conectada a los controles del cassette de
audio, para la lectura del programa. Otras versiones de Basic surgen como
proyectos académicos, es el caso del trabajo de Gordon Eubanks y Gary
Kildall,
que dió como resultado EBasic, cuya evolución produjo una versión comercial
denominada CBasic.
Posteriormente, Gates se independizó de MITS y estableció su
propia empresa: Microsoft Inc., para la venta y distribución de
software. Esta empresa dió origen a la versión más popular del lenguaje,
el Basic de Microsoft . Motivado quizás por el amplio uso que tenían
los lenguajes Fortran y Cobol en las computadoras tradicionales, esta compañía también produjo, al cabo de dos años, compiladores de estos lenguajes
para el 8080.
Con el recurso de los ensambladores y de las versiones de
Basic da principio un desarrollo de programas de aplicación, en el
que se empleó de manera preponderante la cinta de cassette como
medio de intercambio y distribución. Los primeros programas de
aplicación consistieron de juegos electrónicos del tipo
de Star-Trek, Mammouth Cave y algunos programas de servicio para
la edición de documentos, entre ellos el programa Electric Pencil.
En materia de sistemas operativos, el panorama es menos variado. Al principio, las microcomputadoras carecieron completamente de sistema operativo. Con la aparición de Basic y de los discos flexibles (North Star introdujo el primero de 5 pulgadas), surgen las primeras versiones, de los sistemas operativos. Aparece el OS de North Star y el CUTS de Processor Technology, como extensiones de Basic.
El más importante de los sistemas operativos fue CP/M,
desarrollado por Gary Kildall para el 8080. Inicialmente, Kildall fue
contratado por Intel para el desarrollo de un compilador de PL/M (PL/M es
la versión para microcomputadoras del lenguaje PL/I de la IBM) para el
8080. Una vez concluido el proyecto, continuó sus trabajos
en la dirección de un sistema operativo, posiblemente inspirado
en algunos sistemas operativos de los equipos de DEC específicamente
en el OS de la PDP-8.
El sistema operativo CP/M consiste principalmente de un monitor
residente, ensamblador, editor, depurador de programas y accesorios
para organizar archivos de información de disco, intercambiar
los datos entre los equipos periféricos y para configurar versiones apropiadas a las características del equipo.
Kildall propuso un sistema operativo a Intel y ésta lo rechazó, quizás
porque contaba ya con su sistema operativo ISIS II para el 8080, por lo
que Kildall decidio comercializar la versión 1.3 de su CP/M y para el
efecto, fundó la empresa Digital Research.
Rápidamente Cromemco adoptó el CP/M bajo su designación CDOS,
y lo mismo hizo IMS para su IMSAI con el nombre original. Fue tan evidente
su aceptación que estableció un estándar.
Cuando el éxito de la Apple empezó a ser evidente, Microsoft
puso en venta su SoftCard, accesorio que permitió usar el
software que había desarrollado para el 8080, en las
microcomputadoras Apple, con la marginación del microprocesador
original de la Apple, un 6502 de MOS Technology, en favor de un
Z-80 de Zilog, procesador que tuvo como virtud su compatibilidad
con el 8080 de Intel.
Con base en el CP/M de Digital Research y en el Basic de
Microsoft , se inicia un impetuoso desarrollo de programas de
aplicación. Aparecen varias empresas dedicadas a la distribución
de software, pero ahora en discos flexibles. Surgen así VisiCorp, Software Arts, Peachtree Software, Ashton Tate, Human Engineered Software, Sorcim y Micropro, entre otros.
Se produce una gran cantidad de programas de aplicación,
enfocados a facilitar algunas tareas administrativas específicas:
preparación de documentos, procesamiento de textos, preparación de
presupuestos y balances, y para la organización de fichas bibliográficas
y expedientes.
Inicialmente los programas de aplicación se elaboraron en
Basic o en otros lenguajes de programación, y posteriormente se
optimizaron programando algunas de sus partes más importantes en
lenguaje de máquina para mejorar su rendimiento. Entre los programas
de mayor éxito podemos citar a: VisiCalc (auxiliar contable),
WordStar (editor de textos), MailMerge (procesador de textos),
dBase II (manejador de fichas) y a T/Maker (edición y manejo de
tablas).
Específicamente, VisiCalc fue declarado el programa del año en
1982, por el ``hit parade" que mantiene la revista Infoworld para productos
de software. Su éxito es indiscutible, pues en 1983 VisiCorp vendió 400,000
ejemplares de este programa, actualmente es el programa de mayor venta con una
cifra récord de más de 700,000 ejemplares. En opinión de Steve Wozniak,
cofundador de Apple, en una buena medida el éxito comercial de la Apple II se debió a la aparición de este programa. Mucha gente compró el Apple para poder usar VisiCalc.
Nada es permanente, mientras el mundo se dedicaba al desarrollo del Software
para el 8080 para explotar sus características, la tecnología de los
semiconductores trabajaba en dirección de nuevos productos: los
microprocesadores de 16 bits. En 1979 Intel anuncia su nuevo microprocesador
8086, aunque tarda más de un año en ponerlo en el mercado. También
Motorola introduce su microprocesador de 16 bits, el 68000. No tardaron en
aparecer diseños a partir de los nuevos circuitos, Seattle Computer es la
primera en anunciar su módulo con procesador 8086 para el bus S-100 y Godboud, por su parte, introduce un módulo con doble procesador, un 8085 y un 8088 (compatibles con el 8080 y 8086, respectivamente).
También aparecen diseños construidos a partir del 68000 de
Motorola. Dual Systems introduce un módulo para el bus S-100 y Apple anuncia
las nuevas versiones de sus equipos: Lisa y Macintosh.
Con los nuevos equipos que incorporaron al 8086, se inicia la producción
del software, en un principio con el simple traslado de aplicaciones y programas
de servicio, que en una buena medida fue posible gracias a la compatibilidad,
que deliberadamente Intel conservó en su 8086 con relación al 8080, aunque el traslado del software exigió un esfuerzo de consideración.
Esto mismo introdujo una fuerte resistencia al cambio, todo mundo producía
programas para el 8080 y todo mundo también trataba de evitar a los nuevos
circuitos.
También como un traslado de software, aparece el sistema operativo UNIX,
particularmente en las microcomputadoras que contienen un microprocesador
con arquitectura compatible con la PDP-11. Específicamente,
aparece en los equipos que emplean el 68000 de Motorola. Las posibilidades de
UNIX para dominar el mercado son limitadas ya que las microcomputadoras no
poseen las mismas características de la PDP-11 que permitieron el éxito de
UNIX en su versión original: la memoria virtual, la memoria cache y la
capacidad y velocidad de los periféricos.
La inercia rompe cuando la IBM decide participar en el mercado de las
microcomputadoras, ante esta amenaza, todos enfocan su atención
en el 8086, después de que la IBM lo señaló al perfilar su producto de
entrada al mercado, la IBM PC (Personal Computer).
Para realizar sus propósitos por el lado del hardware, la IBM
adquirió parte de las acciones de Intel. Por el lado del software, entró
en pláticas con Digital Research para negociar el empleo del CP/M, y con
Microsoft para el empleo de sus programas de servicio y compiladores de
lenguajes. Al parecer, la IBM no consigue un acuerdo favorable con Digital
Research, por lo que establece otro contrato con Microsoft , esta vez para el
desarrollo de otro sistema operativo para el 8086. Para atender esta nueva
petición, Microsoft contrata a personal que contaba ya con la experiencia
adquirida con los primeros esfuerzos de Seattle Computer.
Con lo anterior, surgen dos sistemas operativos para el 8086:
CPM/86 desarrollado por Digital Research y MS-DOS por Microsoft .
El producto de Digital Research correspondió exclusivamente al traslado del
CP/M original del 8080. El de Microsoft se caracterizó, porque asimiló algunos
de los aspectos convenientes y atractivos que ofrece el sistema operativo UNIX.
Recientemente se anunciaron nuevos productos de Intel, el 8087, el 80286 y el 80386, a sólo tres años de distancia del anterior. Transcurrieron ya tres años desde la aparición del 8086 y todavía no se dispone del software adecuado para que se utilicen todas sus capacidades. Sobre todo, porque no se han identificado aplicaciones que verdaderamente requieran y exploten las características de los microprocesadores de 16 bits. Para la preparación de documentos y los apoyos contables, resultan innecesarios los nuevos equipos. Se ha hecho evidente la falta de entusiasmo e interés que caracterizó al desarrollo del software para los primeros equipos.
Parece, pues, que asistimos a un período de transición; los
nuevos productos sólo se han perfilado, aún no se han consolidado; sin
embargo, los anteriores ya empezaron a declinar y están por desaparecer. Por
si fuera poco, recientemente se anuncio la bancarrota o inminente bancarrota
de las principales casas de software. Y VisiCorp no iba a ser la excepción,
al parecer, esto resulta como consecuencia de una saturación del mercado.
Sin embargo, el desarrollo de la industria continuará indudablemente en
las líneas ya establecidas y en otras que ya se perfilan como innovaciones
interesantes.