AMIGALANDIA

AMIGALANDIA --- Blog Retrospectivo Amiga/MorphOS

domingo, 16 de noviembre de 2014

Entrevista con Olaf Barthel - Obligement




Hoy hemos charlado con Olaf Barthel, programador, entre otras cosas de Term (el emulador de terminal), y de la pila TCP/IP Roadshow. También ha participado en el desarrollo de AmigaOS desde finales de los años 1990.

Hola Olaf. ¿Podría presentarse por favor?

Me llamo Barthel, actualmente tengo 40 años y sigo soltero. Trabajo por cuenta propia, y mi trabajo diario consiste en una mezcla de administración de redes y equipos, diseño de software desde casa, y desarrollo web más ocasionalmente. Mis aficiones están muy dirigidas a la literatura en lengua inglesa (suelo leer más de 30 libros al año), y por tanta intensidad parece que me he convertido en un cinéfilo peculiar, interesado particularmente en la creacion de películas y en bandas sonoras.

- También se le conoce como "Olsen". ¿De dónde procede su pseudónimo?

Hay que retrotraerse a mucho tiempo atrás. Es un mote que me pusieron en el instituto, hace más de 20 años ya.

- ¿Cómo y cuando descubrió el Amiga?

Fue en 1985/1986 cuando leí los primeros artículos sobre el próximo ordenador Amiga, que en un principio se describía como un “Apple Macintosh, pero con color" (aunque no había usado jamás un Apple Macintosh, sabía lo que era). Según iban aportándose más detalles, más claro lo iba teniendo: era una máquina de ensueño, un ordenador tan adelantado a su tiempo que poder usarlo o comprarlo era el sueño de cualquiera. La verdad sea dicha, nunca me había sentido tan furioso hasta que eché un primer vistazo a las estaciones NeXT en 1990.

- ¿Qué equipos Amiga utiliza? (en la actualidad y antes)

Comencé con un modesto Amiga 500, en 1987/1988, y paulatinamente lo fui ampliando con una segunda disquetera, ampliación de memoria, un disco duro de 20 MBytes destinado originalmente al Amiga 1000, y también una unidad de disco duro A590. Después de esto, las ganancias reportadas por un juego en cuyo diseño colaboré, me permitió adquirir un Amiga 3000 en 1991. Lo sustituí tres años más tarde por un Amiga 3000T (con más memoria y procesador 68040). Por ultimo, el Amiga 3000T lo reemplacé por un Amiga 3000UX allá por 1996 (que tenía incluso más memoria y un procesador 68060). El Amiga 3000UX sigue siendo la máquina donde programo, aunque he de admitir que no tengo ningún Amiga en mi oficina, todo el desarrollo de programas para Amiga lo llevo a cabo desde WinUAE.
Tengo también una pila de ordenadores Amiga almacenados que he acumulado durante años...

- ¿Qué hizo con el Amiga antes de trabajar en el desarrollo de AmigaOS?

Primero aprendí a programar en ‘C’, y luego a crear software para Amiga. Entre 1988 y 1990 hice un juego de rol comercial ("Legend of Faerghail"), y posteriormente mucho trabajo de asesoramiento en el Mercado del Amiga. Algunos de los trabajos fueron realizados por ejemplo para Village Tronic GmbH. Diseñé los manuales de usuario y contribuí al desarrollo del software, y en alguna ocasión programé controladores para productos como "Ariadne II", "Picasso II+", "Picasso IV", "Concierto", "Paloma" y otros. A principio de los años 1990 también estuve centrado en desarrollar otros programas como la emulación de terminal “term”.

- ¿Cuál fue su primera aportación en el desarrollo de AmigaOS? ¿Cómo se unió al equipo de desarrollo?

Sucedió allá por 1996/1997. Estaba realizando trabajos de asesoramiento para Amiga Technologies GmbH, y parte de la tarea era cribar las cintas de seguridad que Commodore les proporcionó. Contenían, entre otras cosas, el código fuente del sistema operativo de Amiga. Mi labor consistía  más o menos en darle forma para poder continuar con los trabajos de desarrollo. Producto de este trabajo fueron el FFS actualizado, SetPatch, etc.  de Amiga Technologies GmbH, aunque Heinz Wrobel fue el principal artífice de este software. Seguí trabajando en el desarrollo del sistema operativo durante unos cuantos años más...

Las siguientes actualizaciones AmigaOS 3.5 y 3.9, en las que también estuve involucrado, fueron materializadas porque alguien convenció a Gateway 2000 (como se llamaba por entonces)  que las partes de Amiga que habían comprado podrían dar lugar a algún producto comercialmente viable. Como yo tenía buenas relaciones con ciertos programadores en Alemania, entre ellos Haage & Partner GmbH, tuve la suerte de poder poner en práctica los planes ideados para la actualización 3.5, y fui parte del equipo de desarrollo.

El desarrollo en AmigaOS 4 tuvo lugar gracias a Fleecy Moss de Amiga, Inc. que me presentó a Ben Hermans de Hyperion Entertainment, hacia 2001, y sugirió que sería una buena idea trabajar junto a ellos.

- No se comercializó versión alguna de AmigaOS entre la bancarrota de Commodore (Abril de 1994) y AmigaOS 3.5 (finales de 1999). Aunque si hubo algo de desarrollo en ese tiempo. ¿Qué sabe sobre este periodo?

Por lo que se, el periodo entre 1995 y 1995 no contó con tanto desarrollo de productos de Amiga, como sobre la adquisición de los bienes de Commodore. Cuando empecé a trabajar para Amiga Technologies GmbH, escuché historias y comentarios sobre como ESCOM AG había conseguido hundir Amiga. Me pareció algo exagerado, estaban aquí y abriendo una tienda en Bensheim, una ciudad pequeña cerca de Frankfurt, y estaban contratando a antiguos empleados de Commodore.

Por entonces no tenía demasiado claro qué era lo que se suponía que estaba haciendo Amiga Technologies GmbH con el Amiga. Parte de la compañía quería tirar hacia adelante y desarrollar productos nuevos. Eso condujo el prototipo Walker, y el paquete de programas Amiga surfer, para venderse en un lote conjunto con los ordenadores Amiga 1200 que fueron fabricados con los componentes que ESCOM había adquirido junto a los activos de Commodore. Había grandes planes proyectados, también que habrían desembocado en un Amiga basado en la plataforma PowerPC. Pero, como sabréis, dicho esfuerzo no llegó a buen término debido a la quiebra de ESCOM AG, y con ello la de su filial Amiga Technologies GmbH.

- En Mayo de 1998, Gateway determina la Convergencia Digital para el Amiga. De modo que AmigaOS estaba muerto virtualmente. Pero pocos meses más tarde se continúa con su desarrollo. ¿Quién convenció a Gateway para que cambiase de opinión? ¿Fue usted uno de los involucrados?

Si en algo estuve inmerso por mi parte, fue en planear la actualización AmigaOS 3.5 en la que colaboramos Allan Odgaard, Fleecy Moss y yo mismo. Formaba parte de un trabajo para hacer algo útil con los bienes adquiridos por Gateway. Lo que supe en aquellos momentos, fue que el plan de AmigaOS 3.5 fue rechazado en última instancia. Para mi gran sorpresa, Amiga International, Inc. y Haage & Partner GmbH retomaron el proyecto. Haber tenido algo planeado parece ser que fue una gran ayuda.

- AmigaOS 68k fue programado en diferentes lenguajes y se requerían diferentes compiladores. ¿Puede hablarnos sobre la historia del “rediseño” del código fuente de AmigaOS que fue necesario para poder hacerlo portable?

No soy la persona indicada a quién preguntar. Mis aportaciones al proyecto AmigaOS 4 implicaban la creación de una estructura válida del sistema operativo, y por ello no tuve nada que ver en el rediseño o programación de la capa de abstracción de hardware PowerPC, necesaria para que el sistema corra sobre él. Las primeras tareas consistían sobre todo en ordenar y aclarar el código fuente, investigando qué es lo que había que mejorar, las novedades por añadir, etc. La enorme tarea de sustituir los cimientos principales del sistema operativo, fue realizada por los hermanos Frieden de Hyperion.

- A finales de los 90, usted era miembro del ICOA, Industry Council on Open Amiga, creado por Fleecy Moss. ¿Cuáles fueron las aportaciones principales realizadas por esta organización?

No solo estaba el ICOA, también CORE, COSA, Save the Amiga, KOSH, Jay Miner Society, OpenAmiga, Phoenix, y Team Amiga. Aunque la situación y el destino del Amiga había estado fluctuando a finales de los años 90, nunca faltaron buenos deseos ni agrupaciones que discutiesen y tratasen de dar forma al futuro del Amiga.
Hace mucho tiempo desde que leía los mensajes que se intercambiaban entre estos grupos. Recalco que los resultados generados no estuvieron a la altura de sus deseos y ambiciones. Hacia el año 2001 ciertamente quedaban pocas energías.
A lo único que condujeron estas agrupaciones fue a hacer realidad el proyecto de desarrollo de AmigaOS 4, y los trabajos de desarrollo del hardware AmigaOne asociado. Unos acercamientos muy ambiciosos, aunque a la hora de su concepción estaban, como sabemos todos, a 5 o 6 años de producir resultados. ¿Demasiado tarde? Quizá...

- ¿Era una organización realmente útil? ¿Sería positivo crear una agrupación semejante hoy en día?

No sé si en concreto el ICOA, fue crucial a la hora de trabajar en que tuviéramos plataformas hardware tanto para AmigaOS 4 como para MorphOS. Son, en mi opinión, los últimos resultados de las asociaciones comunitarias de Amiga de finales de los 90 que realmente afectaron y moldearon la situación.
Dada la enorme ambición presente en estas organizaciones, los resultados no se situaron al nivel que uno podría haber esperado. Diría que fueron útiles en cuanto que ayudaron a la articulación de un posible futuro sobre cómo debería ser la plataforma.
Dudo que cualquier organización fuera de útil en la actualidad. Como sucede con el ejemplo de finales de los 90, no había una sola organización llenando el vacío, teníamos al menos diez. Y no todas remaban en la misma dirección. Las premisas y opiniones estaban tan fragmentadas como lo está hoy la voz de la comunidad Amiga. Con la diferencia de que actualmente puede que exista una mayor división entre las partes que forman la comunidad.

- Después de trabajar en AmigaOS 3.x, participó en el AmigaOS 4 de nueva generación. Antes de nada, ¿podría presentarnos a los miembros del equipo de desarrollo de AmigaOS 4?

Es complicado. Soy miembro del equipo de desarrollo, pero no estoy dentro de la dirección, ni nunca lo estuve. Lo más que puedo hacer es ofrecer una lista de personas, que durante todos estos años, han trabajado y contribuido con el proyecto de AmigaOS 4:

Tobias Abt, Andrija Antonijevic, Simon Archer, Olaf Barthel, Don Cox, Richard Drummond, Stefan Falke, Stephen Fellner, Philippe Ferrucci, Hans-Jörg Frieden, Thomas Frieden, Peter Gordon, Timothy de Groote, Stéphane Guillard, Paul Heams, Joshua B. Helm, Steffen Häuser, Matthew Kille, Alexander Kneer, Christopher Kossa, Adam Kowalczyk, Jens Langner, Henning Nielsen Lund, Martin McKenzie, Martin Merz, Costel Mincea, Rene Olsen, Sven Ottemann, Andrea Palmate, Almos Rajnai, David Rey, Thomas Richter, Rudolph Riedel, Oliver Roberts, Stefan Robl, Hans de Ruiter, Stephan Rupprecht, Csaba Simon, Vit Sindlar, Steven Solie, Ignatios Souvatzis, Martin Steigerwald, Dirk Stoecker, Jörg Strohmayer, Massimo Tantignone, Rene Thol, Thomas Graff Thøger, Laszlo Torok, Massimiliano Tretene, Andrea Vallinotto, Ross Vumbaca, Charles Warwick, Scott Wegner, Davy Wentzler, Colin Wenzel, Frank Wille, Heinz Wrobel, Tony Wyatt y Detlef Würkner.

Espero no haber olvidado a nadie. No todos los programadores mencionados siguen trabajando en el proyecto. Yo mismo me retiré por un tiempo por agotamiento y por otros compromisos.

- En Abril de 2007, hubo un litigio entre Amiga Inc. e Hyperion, y el futuro de AmigaOS 4 parecía incierto. ¿Qué reacciones tuvieron lugar en el equipo de desarrollo de AmigaOS 4?

Por lo que puedo recordar hubo quejas colectivas. El motivo de Amiga, Inc para ir a juicio por un bien del que se habían despojado para centrarse en software para teléfonos móviles (y lo que no lo son), no era nada comprensible si eras “simplemente” un programador. No ayudó en nada a la motivación del grupo de programadores de AmigaOS4, y ciertamente causó daños a Hyperion.

- Si tuviera que resumir los avances de AmigaOS 4.x con respecto a la versión 3.9, ¿qué cinco novedades elegiría?

Hum... solo puedo pensar en tres cosas:

1. AmigaOS se ha convertido a la plataforma PowerPC. Desde un punto de vista de trabajo, y puesto que la mayor parte del código que forma parte de AmigaOS está basado en el trabajo original de los ingenieros de Commodore, es realmente un gran logro. Y pienso que es un tipo de objetivo extremadamente raro. Fuera de los ámbitos de contratos militares, apenas hay nadie interesado en realizar el esfuerzo de portar un sistema operativo completo ya existente a una plataforma hardware totalmente diferente. El motivo es que es arriesgado, caro y requiere gran cantidad de tiempo hasta ser completado.

2. El resultado es un producto comercial que hoy en día puede comprarse, con hardware con el cual darle uso. Conseguimos llegar lejos, a pesar de todos los riesgos y un tiempo de desarrollo que se prolongó bastante.

3. No es simplemente una conversión del código existente que no se había modificado desde 1993. El sistema operativo se ha mejorado significativamente con los trabajos de desarrollo. Los cambios principales sin embargo, no están a la vista y por tanto el usuario no los puede apreciar directamente.

- ¿Cuáles pueden ser las principales mejoras que podremos esperar en futuras versiones (4.2/4.5)?

Se lo que quisiera ver incorporado en un futuro, pero quizá no concuerde con la ruta a la que pretende llegar el equipo oficial de desarrollo. Sin un orden en especial:
1. Es necesario sustituir el sistema de impresión. No es solo por la falta de controladores para las impresoras actuales, sino también la propia arquitectura que ha estado a punto de colapsarse debido a las limitaciones impuestas por su antigüedad.
2. El juego de desarrollo de la interfaz de usuario, no tiene la potencia necesaria para las necesidades actuales. Hay que sustituirlo o mejorarlo. Lo que tenemos en la actualidad, al igual que sucede con el sistema de impresión, está limitado por las mismas trabas que tenía en 1991.
3. El sistema de ficheros de AmigaDOS necesita claramente una renovación. No sólo es terriblemente difícil implementar o convertir un sistema de ficheros, sino que la arquitectura actual limita severamente el rendimiento del sistema de ficheros.
4. La funcionalidad de red incorporada de serie no es suficiente para las necesidades del momento. La pila TCP/IP es muy antigua, y las herramientas suministradas dejan mucho que desear. Cosas tan sencillas como poder compartir ficheros, no forman parte siquiera de AmigaOS.
5. La arquitectura del sistema de controladores de dispositivo debería actualizarse e incrustarse en un framework. Para empezar, no contamos con un modelo de controladores de dispositivos uniforme, y ni siquiera es posible indagar en las capacidades de un controlador de dispositivo a ciencia cierta.

- Algunos usuarios dicen que Workbench está obsoleto. ¿Sigue teniendo Hyperion planes para desarrollar una nueva versión de Workbench? ¿Colaborará usted con una supuesta versión renovada?

No se qué planes existen para actualizar Workbench, pero si tengo una idea de lo que se podría hacer. Lo primero sería comenzar desde cero y dejar atrás el código existente. Esto es lo que se debía haber hecho hace décadas. Seguimos utilizando básicamente el mismo Workbench que teníamos en 1985.

- En su opinión, ¿qué otros componentes del sistema es necesario actualizar/renovar?

Bueno...creo que ya dije algo sobre lo que me gustaría ver en el sistema operativo en un futuro. Esa pequeña lista, bastaría para mantener a los programadores, yo mismo incluso, entretenidos durante una temporada.

- Usted fue uno de los primeros en convertir UAE para Amiga. ¿Sería posible una integración oficial completa en AmigaOS 4.x?

”Convertí” UAE original para AmigaOS 3.x a principios de los años 90, sólo por curiosidad. No se podría considerar como una conversión “seria” con un grado decente de integración en el sistema, p.ej, que permitiera copiar datos entre el sistema emulado y el anfitrión.
Dada mi experiencia con E-UAE, me temo que la emulación nunca va a ser tan estable y madura como WinUAE lo es actualmente. Requerirá un mayor esfuerzo para que funcione correctamente en AmigaOS 4, si la meta es utilizar aplicaciones 68k desde el emulador a modo de sistema sandbox. Personalmente, no soy muy dado a ejecutar juegos antiguos en el emulador, aunque pueden funcionar decentemente en el estado actual de E-UAE. Tanto el sistema operativo como programas deberían funcionar también.

- ¿Es usted probador beta del AmigaOne X1000?

No.

- ¿Qué le parece este equipo?

Es el hardware más potente sobre el que nunca se haya ejecutado un sistema operativo Amiga, aunque ciertamente no el más caro. He estado tentado de adquirirlo, pero me di cuenta de que para el trabajo diario que hago en la oficina, y los desarrollos de Amiga que suelo barajar, necesito una máquina que pueda transportar fácilmente a cualquier parte. Un X1000 a pesar de su extremada potencia, no es tan fácil de transportar como un portátil.

- El elevado precio del AmigaOne X1000 podría ser un argumento, para muchos usuarios de Amiga, para no adquirir dicho sistema. Una solución para vender más copias de AmigaOS sería una versión x86. ¿Qué opinión tiene al respecto?

En nuestro diminuto mercado, el precio siempre es un problema. La potencia que ofrece el X1000, para una base de clientes tan reducida, provoca naturalmente que el precio sea muy alto. Tal y como están las cosas en este momento, no se puede fabricar este equipo en la cantidad suficiente para reducir costes, y por lo tanto su precio.
Considero la vía del x86 una quimera. AmigaOS no cuenta con una capa de plataforma portable: está atado a una plataforma anfitriona big-endian,  no sólo en sus fundamentos sino también en cuanto a sus estructuras de datos. Diría que las opciones de ver AmigaOS corriendo sobre ARM son mucho mayores que de verlo sobre un procesador de la familia x86. Si quisiera hacerlo funcionar sobre un anfitrión x86, tendría que desechar todo el software Amiga diseñado para ser ejecutado sobre la plataforma 68k, gran parte del cual se sigue utilizando en la actualidad (y me atrevería a decir que no es que sea útil, sino absolutamente necesario). Habría que desestimar gran parte del sistema operativo y sustituirlo.
Aunque se quisiera hacer todo esto como parte de una conversión a x86, tendrían que llevarse a cabo otros sacrificios significativos. Dudo que cualquiera de estos resultasen en un producto viable.

- Usted es el programador del protocolo TCP/IP Roadshow. ¿Cuándo y por qué decidió crear esta aplicación?

Cuando salió al mercado AmigaOS 3.9 se hizo patente que el futuro sistema operativo del Amiga necesitaría una pila TCP/IP, y por ese tiempo no existía un producto así, apto para su incorporación. Por curiosidad, comencé a investigar qué grado de dificultad tendría convertir una pila TCP/IP nueva al Amiga. Resultó no ser tan complicado después de todo, aunque me llevó su tiempo descubrir cómo hacerlo funcionar correctamente en el Amiga. Tuve que crear nuevos comandos de configuración, añadir nuevas APIs específicas de Amiga y zambullirme de lleno en la programación de controladores de red PPP y PPPoE desde cero.

- En un tema reciente de AmigaWorld.net, algunos preguntaron si se iba a publicar una versión AmigaOS 3.x de Roadshow. ¿Qué puede decirnos en este momento? También se podría esperar una versión MorphOS/AROS?

Dudo que AROS necesite otra pila TCP/IP, además de que no cuenta con un anfitrión big-endian, el cual Roadshow da por sentado que está presente. Hice algunos pequeños “atajos” durante la conversión del código, y era posible que ahora esto me persiguiera.
MorphOS quizá sea otro cantar, aunque las obligaciones contractuales me impiden publicar Roadshow para esta plataforma.

- A primeros de Octubre se publicó una versión nueva del famoso editor de texto CygnusEd. ¿Sigue inmerso en su desarrollo? La versión 68k es funcional en MorphOS, ¿pero podemos esperar una versión específica para PowerPC? ¿y una versión AROS?

Mientras CygnusEd 4 seguía en desarrollo, la importante ayuda de los programadores de MorphOS hizo posible convertirlo y poder realizar pruebas. No es el caso así de CygnusEd 5. Me gustaría contar con los recursos necesarios para crear una versión completa MorphOS, pero no me veo capacitado yo solo. Algún tipo de ayuda sería muy de agradecer.
En cuanto a AROS, CygnusEd es una aplicación AmigaOS muy intensa, creada para ese ordenador Amiga basado en el 68000 para poder ser convertido fácilmente. Me temo que un acercamiento más razonable sería tratar de programarlo desde cero. Un esfuerzo semejante, no entra en mi lista de proyectos ahora mismo.

- ¿Qué opinión le merecen  MorphOS y AROS?

Aprecio y admiro ambos trabajos. La historia del Amiga de haber seguido otros derroteros, habría visto un único sistema operativo levantando la antorcha, pero ahora tenemos tres sistemas operativos cuyos diseños giran en torno a las mismas ideas grandiosas incorporadas en AmigaOS. ¿En serio que alguien puede quejarse? :-)

- ¿Le pidió Ralph Schmidt que se uniera al equipo MorphOS?

Si recuerdo correctamente, nunca hemos hablado de ese tema. Cuando apareció MorphOS, yo estaba demasiado centrado en mis pequeños proyectos, y más tarde el proyecto de AmigaOS 4. Esto último complicó las cosas enormemente, es lo que puedo decir...

- Es usted uno de los extraños casos de programador que colabora tanto con AmigaOS como con MorphOS (por ejemplo FFS2). ¿Piensa que es posible una colaboración incluso mayor?

Me gustaría. Pero las decisiones empresariales y sus políticas han complicado mucho más las cosas.
También se ha reducido el contacto personal entre programadores como antaño. El motivo por el cual mi reimplementación de FFS forma parte tanto de MorphOS como de AmigaOS, es porque le prometí a Ralph que estaría disponible para MorphOS. Conozco a Ralph desde 1993, y coincidía con y otros programadores alemanes regularmente en los años 90. Con el paso del tiempo, las reuniones de programadores eran menos frecuentes, y yo personalmente las echo de menos.
Es muy distinto haber tenido un contacto personal con alguien, que sólo a través de los foros y chats. Suele haber mucha menos confianza de por medio, y es muy sencillo malinterpretar las intenciones mútuas, lo que puede llevar a guerras incendiarias y cosas peores.

- ¿Qué opinión le merece Commodore USA y sus posibles nuevos equipos con las etiquetas "Commodore" y "Amiga"?

Me sorprende la cantidad de tiempo que ha tardado en materializarse este tipo de negocio. En el mercado del Amiga, el creador de la plataforma (Commodore) siempre ha estado en una posición más débil que la de los desarrolladores que creaban productos para el mercado. En los mejores momentos, fabricantes como Great Valley Products arrastraron a la plataforma mucho más allá de lo que había conseguido el creador original de la plataforma. Pero en los malos momentos, tenían pequeños negocios aprovechando los defectos de la plataforma, y no de una manera constructiva. Está por ver cómo encaja “Commodore USA” en este esquema.

Tengan las intenciones que tengan aparte de generar dinero, no comulgo con la idea de poner una etiqueta Amiga al tipo de hardware que se ha anunciado. Para mi Amiga supuso servir en bandeja tecnología: poner en manos de usuarios y desarrolladores la máxima potencia. El esfuerzo para crear un producto impresionante, hardware y software, con la plataforma Amiga en los años 80 y 90, fue significativamente menor que para los IBM PC compatibles y los Apple Macintosh. Los productos de Amiga podían avergonzar a las plataformas competidoras viendo lo que se podía adquirir por mucho menos dinero, y muchas veces eran superiores incluso a las soluciones más caras para otras plataformas. El Amiga, como plataforma, produjo un gran efecto de palanca.
Quizá no sepa lo suficiente sobre los esfuerzos de "Commodore USA", pero ahora mismo puede considerarme escéptico en cuanto a que este producto esté en la misma liga de brindar tecnología como se supone que lo haría el Amiga.

- ¿Un mensaje para la comunidad Amiga?

Esto no se ha acabado aún :-)