Como probablemente han notado en otros post, tengo una pequeña colección de computadoras antiguas que mantengo como hobbie, dándole uso ocasional a alguna de ellas y otras que solo las mantengo como reto.
Mi laptop más antigua es una computadora single core Celeron M de 32 bits con 1GB de RAM y 60 GB de disco duro. Para la época que mi papá me la regaló era una computadora de mediano porte (ya que las laptops no eran tan ubicuas), pero complementaba bien mi computadora Pentium 4 de 32 bits single core. Con estas dos computadoras inicié y finalicé la universidad.
Sin embargo el día de hoy noté que el disco duro había muerto, por lo que tuve que echar mano de mi cementerio de piezas viejas reemplazándolo por un disco aun funcional y me enfrenté a la decisión de que sistema debía instalar.
Uno de los escenarios actuales para computadoras de 32 bits es que cada vez menos sistemas les dan soporte, incluyendo versiones de distribuciones Linux, por lo que mi primer pensamiento fue instalar PuppyLinux el cual aun brinda soporte a 32 bits. Sin embargo no tuve éxito preparando una USB booteable, por lo que decidí utilizar mis instaladores viejos y noté que podía ser un proyecto interesante intentar utilizar OpenSolaris, el ultimo gran proyecto de Sun Microsystems.
¿Que fue OpenSolaris?
En los últimos años de Sun Microsystems y principalmente luego de la burbuja .com, Sun intentó con algún éxito volverse una empresa de servicios Open Source, comprando y liberando algunos de sus paquetes de software más populares, incluyendo:
- Java
- OpenOffice (originalmente StarOffice)
- MySQL
- Hudson (el que eventualmente seria Jenkins)
- JavaScript (Sun era el dueño del nombre y colaboró con Netscape en la implementación)
- OpenSolaris UNIX (originalmente Solaris UNIX)
- VirtualBox
La historia es bastante larga y triste, pero básicamente Sun tenia en su ADN ser una empresa de hardware y appliances, mercado que desapareció de forma rápida cuando se acabó el dinero en TI por la crisis de las .com. Con lo que la gente empezó a preferir soluciones basadas en x86 y Linux frente a soluciones más costosas que utilizaban SPARC con UNIX.
En uno de sus últimos movimientos, Sun intentó sin mucho éxito adoptar y crear un ecosistema Open Source alrededor de su stack de productos, entre estos crear grupos de usuarios en universidades denominados Open Source University Meetup, el cual como he comentado en otros post, fue uno de los semilleros del nacimiento de GuateJUG, y del cual fui «embajador» en la Universidad de San Carlos de Guatemala.
Entre las cosas que nos brindaban a los miembros del OSUM, eran discos de Solaris, Java, Netbeans para todos los miembros, los cuales utilicé hoy después de 12 años:
Aunque probablemente en Estados Unidos las conexiones de banda ancha eran ya un bien de consumo masivo, la mayoría de países de LATAM apenas si llegábamos a redes celulares y ADSL cuando había cobertura con un promedio de 512kbps, por lo qué el compartir datos por DVD tenia bastante sentido.
Eventualmente OpenSolaris fracasó y Oracle lo volvió nuevamente software propietario. Sin embargo para ser sinceros antes de Oracle ya habia un problema para crear una comunidad alrededor de OpenSolaris, principalmente gracias a Linux el cual tenia mejor compatibilidad con hardware de la época.
Lo ultimo significativo que se ha sabido de Solaris es que varias personas del équipo Solaris-SPARC fueron despedidos, y que Solaris ahora enfocaria sus esfuerzos en el proyecto Solaris.next en lugar de versiones mayores como antiguamente, principalmente para entornos empresariales. Con lo cual los únicos UNIX puros con versiones de escritorio vienen siendo BSD y MacOS.
Programando Java con OpenSolaris 2008.11 en el 2020
Al inició y luego de comprobar que mis discos de instalación no tenían rayones y moho, procedí a arrancar el sistema y sorprendentemente el instalador reconoció la mayoría de hardware a excepción de la tarjeta WiFi Atheros, problema que si no estoy mal fue resuelto hasta la versión 2009. Debo decir que la experiencia a pesar de lo limitado del hardware era muy cómoda, lejos estaban aun los tiempos en los que gastamos GB de ram solo para tener un chat con emojis por culpa de Electron y Slack:
El segundo disco de instalación contenía Java, Sun Studio(IDE para C++, C y Fortran) , Netbeans, MySQL, VirtualBox y OpenOffice y vale la pena resaltar que por defecto, OpenSolaris incluía de serie una instalación de JRE 6.
Este probablemente era el primer reto, ya que al no tener compilador no podía utilizarlo como entorno de programación. Al utilizar el gestor de paquetes se mostraba correctamente que JDK estaba disponible en los repositorios, el problema es que esos repositorios no existen desde hace ya varios años. Por lo que mi solución fue utilizar los repositorios legacy de OpenIndiana, el fork medio muerto de OpenSolaris.
Una vez conseguí instalar un compilador (JDK 6) fue el momento de NetBeans 6.5, el cual incluia soporte para Java 6, Java EE 5 y Glassfish v2 y v3 (prelude). Debo decir que frente al instalador actual, para principiantes este instalador tiene mucho más sentido:
Al utilizar NetBeans y Glassfish con 1GB de ram (menos video) si lo sentí relativamente lento, pero no tanto como utilizar algunos apps servers actuales (te veo a ti WebLogic), para probar hacer algo significativo realicé un servicio REST con Java EE 6, es como andar en bicicleta cuando tu bicicleta es standard.
Entre otras cosas curiosas tuve que crear una zona especial en mi red para utilizar el software de forma segura, el navegador Firefox es tan viejo que Google me mostraba una apariencia legacy:
Y muchas paginas http ni siguiera funcionaban por las cadenas de confianza en los certificados SSL:
Me sorprende bastante como ha ido evolucionando el desarrollo empresarial y a la vez como se parece tanto a lo que tenemos actualmente. Por eso sigo siendo fiel creyente en estandares como Jakarta EE.
¿Es sostenible a largo plazo?
La respuesta es, definitivamente no. Al momento que configuré los repositorios de OpenIndiana, se me ofreció una actualización del sistema. Con lo cual consideré seriamente actualizarlo y luego actualizar hacia la ultima versión de OpenIndiana.
Pero OpenIndiana dejó de soportar 32 bits en 2017. Con lo que luché a muerte con mi pendrive y finalmente instalé PuppyLinux:
Sinceramente este ejercicio me trajo recuerdos de cuando creía que era posible que Linux dominara el escritorio domestico. Pero cuando se piensa bien, ya escasean los linuxeros reales, y muchos de los que existieron hoy en día a lo sumo son administradores de nubes propietarias.
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36
Oracle rulz