El zen de plan9 Dicen los japoneses segun su folklore, que todo reside en aceptar el vacio. Que si te vacias de prejuicios y conocimientos obsoletos, podras aceptar lo nuevo con facilidad. He aqui 9front, que es nuevo, y a la vez viejo. Es Unix, pero mas fiel a Unix mismo que las propias encarnaciones de Unix en los 90. Acompanyadme a este viaje. Este post ha sido editado con Sam, el editor simple de Plan9. Sam es como una version grafica de Vi, pero con una forma distinta de aceptar comandos. Acme es el editor avanzado, con florituras, pero muchas menos que Emacs. Tambien puedes leer el correo y Usenet con Acme pero a voluntad. Emacs, sin embargo, te carga todo al inicio. Esto no es asi. Para editar el post en si, he montado el directorio HOME de mi usuario en Texto-Plano en /n/ssh, asi que directamente he usado el sitio remoto como si fuera parte de mi disco duro, no ha diferencias. Por que he optado por usar plan9/9front? Por la sencillez de disenyo. Desde el propio escritorio, donde se lanza desde el gestor de ventanas 'rio', con el script 'riostart' (ristra de comandos en un fichero a abrirse) como opcion al inicio. Eso es util, por ejemplo, para abrir un navegador nada mas iniciar el sistema grafico. Como he dicho, es simple, es Zen, es minimo. Os lo describo: Manejo basico: boton derecho del raton en una zona libre del escritorio 9front, sale un menu pelado, elijo New. Se ejecuta el programaWindow, y dentro, rc, para abrir un comando que le lance. Es decir, me sale una ventana con una linea de comandos, rc. Si por ejemplo, en el menu tuviera una opcion que me lanzase Sudoku, lanzaria internamente el comando 'window games/sudoku'. Este comando lo podemos crear tambien a mano en una ventana de rc: escribe 'window games/sudoku' y pulsa enter. Aparece una nueva ventana, y dentro aparecera un programa con games/sudoku, un Sudoku a resolver. Si lanzas games/sudoku dentro de rc, la ventana cambia para mostrarte... el mismo games/sudoku de antes. Si quieres hacer exactamente lo que haces cuando lanzas 'New' desde el menu desde el escritorio, pues, sencillamente, lo que haces es abrir... 'window rc'. Simple, claro, pristino. Tu diras, si al inicio cambio 'rio' por games/sudoku? pues lo que obtendras es un sudoku enorme a pantalla completa sin la posibilidad de abrir nada mas. Si al arrancar solo tuvieras 'window games/sudoku', obtendras una ventana con el games/sudoku adaptada a un tamanyo cuadrado pero sin la opcion de cerrarse ni nada. Ahora ya sabes lo que hace 'rio', que es manejar las ventanas y darte un menu al hacer click en un sitio donde no haya ventanas para poder cambiarlas de tamanyo, cerrarlas, o crear una nueva con rc por defecto para poder escribir comandos para abrir programas de una linea o de varias. Puedo editar el gestor 'rio' para anyadir por ejemplo, el programa 'vdir' y en vez de salir una ventana con comandos, salga el explorador de carpetas? Claro. Dentro del programa 'window' no se abriria 'rc', ni tampoco 'window rc vdir', si no planamente, 'window vdir'. Al cerrar vdir, como la ventana 'window' no tiene un programa activo, se cierra. Asi funciona el comando 'window'. Cero magia. Si hubieras lanzado el games/sudoku antes y lo hubieras cerrado, esa 'window' tambien dejaria de existir. En cambio, si lo hubieras lanzado dentro de una 'window' con 'rc' desde el propio 'rc', pues... hubieras vuelto al propio 'rc' para poder abrir nuevos programas. Para redimensionar ventanas, en vez de 'New' antes, eligo 'Resize', y vuelvo a marcar el programa abierto. Pincho y arrastro y la ventana se recrea en este tamanyo. Para cerrarlo, lo mismo: con Delete. No hay mas opciones. A nivel interno, es hasta mas loco. He aqui por que: Todo es un fichero a nivel extremo, *todo*. Desde la representacion del sistema de ficheros al propio escritorio. O la ventana abierta: /dev/window. Cada programa tiene su propio /dev/window. Adivina que pasa si escribes 'resize 200 400' (o similar no recuerdo) en /dev/window. Cambia de tamanyo a esos pixeles. Magia. El propio portapeles: /dev/snarf. Puedo abrir /dev/snarf con un editor de texto? si. Que pasa si lo edito, y luego en un programa hago un 'paste' (pegar)? Pues lo que estas pensando. Se pega tal como lo has editado. La propia pantalla al leerse en /dev/screen, se puede pasar a PNG con un comando obvio: topng < /dev/screen > captura.png Como el formato de plan9/9front nativo no es png, otro propio, topng sabe detectar el formato de /dev/screen y te vomita un png a la salida en caso de no haber puesto > captura.png, claro. Si solo pones topng < /dev/screen, solo verias basura en tu terminal, los bits puros de la imagen como un galimatias ASCII y no ASCII que el rc intenta darte como un texto, pero no lo es. Pero con > redirigimos en rc a un fichero, asi que lo que hacemos es volcar esos bits a captura.png. Como ejemplo rapido: echo 'hola' en rc te escribe un triste 'hola' a la salida. echo 'hola' > fich.txt te pone en fich.txt ese mismo hola. Con cat 'fich.txt' te saca a la salida el contenido de 'fich.txt' que es... hola y finalmente echo 'y adios' > fich2.txt cat fich.txt fich2.txt > fich3.txt te vuelca 'y adios' a fich.txt y... cat te lee fich.txt fich2.txt sin parar y te vuelca todo en fich3.txt. Resultado en fich3.txt? veamoslo: cat fich3.txt hola y adios Esto es Unix. Esto es el uso de 'cat', concatenar bits y texto. Con echo, como el eco... repites lo escrito, y con >, rediriges (con < lees). Zen. Simplicidad. Magia Unix, simplemente magia del 'todo es un fichero'. Unix 2.0. Unix llevado al limite. Recordais /dev/dsp, antes de ALSA, con OSS? Aqui lo mismo, /dev/audio, con mixfs(1) como equivalente de pulseaudio, pero mucho mas ligero, y /dev/audio sigue funcionando igual. Imagina que tenemos un CD de musica en /mnt/cd. En esa carpeta salen los ficheros de audio del CD. En 'rc' el * (asterisco) sirve para recoger todo (hay mas). Que pasa si hago un cat /mnt/cd/* > /dev/audio en rc? Si /dev/audio es la salida de la tarjeta de sonido, el cat va a enviarle a /dev/audio todas las pistas del CD, de la primera a la ultima, de forma secuencial, hasta a acabar el CD. Ergo, va a reproducir... musica. El teclado tambien es un fichero, y por supuesto tambien los ajustes del tipo de teclado, es decir, mi teclado en espanyol funciona como un teclado americano por defecto tal como viene en /dev/kbmap. Por ejemplo, quiero que la tecla en castellano <> se comporte como \|. Trivial con /dev/kbmap. Con evdump recojo el codigo de teclado al apretar la tecla, similar a xev en Linux/BSD con X11. Con ello, escribo un fichero teclas.txt con: 0 86 '\ 1 86 '| Primera columna: modo 0, normal, modo 1, tecla pulsada con shift modo 2 tecla con Ctrl... se entiende Segunda columna : codigo de tecla. 86 es la <>. Tercera comumna : accion a imprimir. Para que toma mis cambios: cat fich.txt > /dev/kbmap Ya? Solo eso? Puedo hacer que el ctrl este en Bloq Mayus para no dejarle el menyique en carne viva? Si. Todo eso y mas. Solo tendria que saber el codigo de Bloq Mayus, y poner algo como 0 codigo_de_mayus codigo_de_control Y al lanzar cat fich.txt > /dev/kbmap, en ese momento, pulsar Bloq Mayus seria lo mismo que Ctrl, pudiendo pulsar Ctrl-a de forma mucho mas comoda. Mucho mas simple que xmodmap y amigos, donde entenderlo era casi magia negra. Y en Windows casi tienes que sacrificar un pollo y esperar a que se alineen los planetas para poder cambiar las posiciones de las teclas. Si es que puedes. Sigue pareciendo arcano 9front, *pero*, en mi opinion es mucho mas simple si conoces Linux/BSD a nivel avanzado. rc es mucho mas simple que bash y hasta ksh. No hay wget ni demas, hget/hput son unos simples scripts que permite desde bajar ficheros a subir pastebins con wgetpaste. No hay aliases ni function ni typeset ni cosas horrorosamente complejas. Ni export. Para declarar una variable en rc: numero=23 echo $numero Sale 23. Y como hacer un alias digamos, que al escribir 'cda' me reproduzca un albun completo de Pink Floyd en disco? cda() { cd /mnt/cd/; cat * > /dev/audio } Al escribir cda y pulsar enter, el rc primero lanza cd /mnt/cd, nos deja en la carpeta del cd, y el cat * lee todos los ficheros en orden y escribe todo a /dev/audio. Simple, Zen. Eso un sistema operativo Zen. El browser Mothra y el viejo Netsurf (ese es conocido en unix) son mas simples que una patata para leer la web y eso evita cargar JS... porque no hay. Te obliga a usar webs peladas, como https://neuters.de o https://portal.mozz.us, pero tambien hay Gemini y Gopher bajo los programas castor9 y gopher. Para noticias, leo gemini://gemi.dev y gopher://magical.fish. Como se abren los pdf en 9front? page fichero.pdf Como funciona el leer mp3 en 9front? play /ruta_a_los_mp3/* Algo mejor? Que tal si creamos una lista y la abrimos de forma grafica en zuke? audio/mkplist -s /ruta_a_los_mp3/ > musica.plist window audio/zuke < musica.plist Ahi tienes tu jukebox grafico, puedes usar el raton perfectamente, o el teclado. No hay perl, ni python, ni JS, ni C#. Solo C y Go como lenguajes de sistemas. Como lenguaje para usuarios, rc y awk hacen de todo y hacer un equivalente de IRC en rc con aux/listen es cosa de... 10 lineas. Si hay equivalentes a /dev/audio para internet... hacer un programa en RC que te haga un cliente de IRC y que de cuando en cuando escriba un 'echo PONG BLABLABLA' > /fichero/conexion/data con aux/trampoline /fichero/conexion, es que ya te lo da todo hecho. De hecho hasta el crear una conexion cifrada se puede hacer a nivel de linea de comandos. Y si sabes C... olvidate de funciones de 50 lineas para conectarte a internet y 200 para poder interpretar algo. Casi te haces un cliente de Telegram en 200, 2 para la conexion. Eso permite entender la computacion mucho mas lejos que los propios Unix clasicos. Al menos a bajo nivel. A 'alto' nivel, al menos comparados con codig ensamblador para la CPU 6502 de la Nintendo, esta el viejo C que como digo es mucho mas simple. Tienes el fichero /dev/draw para escribir pixels en pantalla, libdraw para simplificar esa escritura y libpanel para hacer algo con menus y demas, tipo el navegador Mothra. Si vienes de Linux/BSD, olvida X11, SDL, Wayland, o si eres de Windows, olvida DirectX y demas. Mira como se leen los datos de la musica del Quake de un CD cd audio, que en 9front se leen como simples ficheros en /mnt/cd http://shithub.us/qwx/qk1/7611418ea0a40796a9b1c221430beb09be17127f/cd.c/raw Lo que hace ese codigo, si no eres programador, es literalmente enviar los bits de cada pista del CD a /dev/audio, como hemos hecho antes, pero en C. Ves? Eso tendria que ser un PC internamente. Poder 'arrastar' y soltar bits o cosas para todo. Imprimir? Coge un fichero, arrastralo en la impresora. Listo, impreso. Escanera? Abre un escaner, aparece un 'fichero' virtual. Sacalo fuera, magicamente el scanner escanea y te vomita un PDF al detectar la 'lectura' de un potencial fichero /dev/scanner redirigido a un PDF o PNG. Deberias poder hacer, (de poderse:) cat /dev/scanner > /usr/glenda/presupuesto.pdf O, de una webcam, ajustarla primero a calidad HD, y luego capturar una foto: echo 'res 1280 720' > /dev/wcam camv /dev/wcam > /usr/glenda/fotofamilia.png Para un usuario seria una pesadillla, lo se. Pero para crear un programa grafico para un usuario, un programa simple que muestre simplemente la webcam, cambie la resolucion y que guarde un PNG, adivina la dificultad que tendria. 0. Nihil, nada, nulo. Tu dirias, pero el usuario novato solo tendria 'vdir' y no podria elegir donde guardar sus ficheros. Vaya cosa, los iphone tampoco, y en Android nadie sabe navegar por los ficheros, los gestores hacen todo. Pon programas especificos abriendo /usr/glenda/imgs/ y te ahorras el 90% de problemas. Lo mismo con /usr/glenda/docs, y fin del asunto. Parcheas vdir con un menu a la izquierda con documentos, audios, descargas, y el usuario no tiene ni por que molestarse. Lo mismo con el gestor de extensiones, plumber. En una instalacion completa de 9front habria programas para todo y con una GUI mas simple que una patata. Nada impide usar el gestor de ventanas 'lola' en vez de 'rio' donde literalmente es una copia de w95. Y con 'window bar' y 'window winwatch' (ajustando el tamanyo de esta ultima) ya tienes una barra de tareas. Un usuario no tendria casi ni que manejar sus ficheros. O preocuparse de nada. Con un vdir parcheado podria copiar y pegar de un fichero especial en /tmp las rutas y tener el 90% de manejo que hace con ficheros y carpetas. Con lo que ocupa 9front puedes instalarlo 15 veces en un disco y ocuparia menos que Windows 10. Que 9front parece complejo para el novato, pero para el usuario medio/avanzado le da muchisima libertad. Si te gusta programar en C en 1 mes si eres novato desde Python (como hay mucha gente ahora) vas a aprender mas y hacer mas herramientas que en meses en C y Linux. Lo recomendaria para el usuario novato tal como esta? Ni loco, como mucho alguien que lleve en Linux/BSD anyos y quiera cacharrear. Solo lo recomendaria si sabe conocer los puertos de programas P2P, sabe ingles basico (cualquiera de menos de 35 anyos) y se defiende bien en conceptos avanzados de informatica, como ficheros, directorios, rutas, entrada/salida... Y bueno, si eres escritor, con troff y unas macros que tengo para a4 (y comandos como spell que tengo en castellano), podrias crear novelas con 0, repito, 0 distracciones. Tu, el editor sam/acme, tu fichero, vdir para ver los ficheros, page para ver el PDF resultante. No hace falta usar Troff como un experto hacker de los 80. Con usar los comandos .SH para secciones, PP para parrafos tal que .SH capitulo 1 .PP parrafada bla bla bla bla Al lanzar troff y ps2pdf (con un script) al fichero .troff con los comandos tendrias un PDF de calidad profesional listo para enviar a cualquier editorial. De hecho te puedes centrar en hacer el texto y meter los comandos troff *despues*, el sistema te maqueta el PDF *solo*. Tu metes los campos .AU (author), el leer al inicio del todo lo del formato A4, el titulo .TL (si no recuerdo mal), y tienes ya el documento realizado. Luego ya si quieres peleate con Word y sus descuadres de parrafo al pulsar una tecla. Y tu diras, si creas una plantilla y solo rellenas los textos de .AU, las cosas tras .PP y demas (y si eres ingeniero, con eqn usando .EQ/.EN maquetas ecuaciones), te sirve igual? Si, si, si. Esa es la idea, asi piensan los programadores. No se pasan el dia 'programando' nuevas cosas, reutilizan y lanzan. Los que se pasan el dia 'creando' rompiendose los sesos, arreglando problemas, son los usuarios. Tu como usuario avanzado no tendrias mas que escribir un documento 'universal' para las novelas y rellenar los campos. Tu diras, pero eso inusable, eso no lo usa un periodista... Bien, ahora piensa en el navegador Mothra, que tiene desde formularios para las webs (ergo, cuadros de texto), a mostrar negrita y cursiva si no recuerdo mal. Coge ese programa y escribe otro como una interfaz simple para crear novelas. Una columna a la izquierda con una lista mostrando los capitulos y la portada, con el autor y demas descritos en campos. Haz que el usuario solo rellene el texto en cada capitulo. Dale un boton para que genere el PDF llamando a Troff por debajo junto al corrector ortografico. Bam, novela lista, mas magia Zen. Reutilizamos componentes, el usuario no lo sabe y el uso de CPU respecto a MS Word se reducido cuanto, en un 99%? Y de pensar? Ha maquetado algo? Cero, el solo ha saltado en capitulos escribiendo en texto plano como aqui y la hecho el PDF separando palabras y todo de forma automatica sin un comando de terminal. No es su trabajo, su trabajo como escritor o periodista deberia ser escribir, no maquetar. Hablemos de distracciones. No hay youtube si no quieres pelearte con el sistema leyendo la guia en https://pspodcasting.net/dan/blog/2019/plan9_desktop.html y sabiendo que seleccionando un enlace https:// y pulsando el boton del raton se abre con el reproductor de video treason. Jodido para alguien de mas de 40 sin carrera de humanidades, informatica o profesiones liberales? Si, pero no es su objetivo, aunque como digo si pusieran la interfaz clonica de w95 (no todo, solo barra de tareas, reloj y ventanas con sus botones) se podria hacer un micro w95, una vez que lo del plumber funciona para abrir ficheros en vdir, para usar pero no tocar. Perfecto para un crio de pocos anyos sin riesgo ni de ver porno (Google ahora no va sin JS) y perfecto para jugar a jueguitos en una carpetita de vdir abriendo cada fichero con su emulador correspondiente. Tambien perfecto para enseyar como guardar ficheros en sam o Acme con ingles muy basico, ver en vdir los ficheros cambiados, ver en vivo como al conectarse tu hijo en un chat jabber (si eres informatico), como se puede abrir en directo el chat en texto-plano... Maravillas informaticas que como digo, si la gente supiera mas ingles (o se pusiera a ello con ganas) y leyese el 9.intro.pdf, al menos como digo la gente de humanidades lo amaria mas al ser un sistema sin notificaciones, distracciones, redes sociales, alertas en Whatsapp... Si eres periodista, abres neuters.de o tu fuente RSS o bien en gemini gemi://gemi.dev, y salgo quiza lo de editar videos, si es texto, amigo, tienes todo ganado, el comando wc te cuenta las palabras en un fichero y hay programas para formatear automaticamente todo de forma 100000 mas efectiva y simple que en Word SIN perder la estructura del propio texto. Magia, como dije? No, amigo, es la magia del texto. Ah, tambien tiene soporte de correo para enviar cosas, hay guia en el link arriba, el de psploquefuere... para desde ver correo a conectarte via SSH, usar escritorios remotos via RDP (los de Windows), ver epubs... Si, puede ser un sistema que *salve* las humanidades y haga una tecnologia mas humana y menos corporativa. Es un poco gatekeeping como dirian los anglos, pero tambien es una paradoja hecha sistema. A nivel simple parece salido del infierno, pero a nivel medio/avanzado el sistema parece escrito como hecho magia para los que les gustaban los Legos y los Mecanos. Unes 5 piezas y ya tienes un mecanismo. Aqui unes 5 piezas con paciencia y tienes casi un cliente para el servicio de Amuled de Linux (el programa P2P de Emule en modo terminal) con botones y todo. Algo que en Linux y Windows son meses de desarrollo y casi una ingenieria en Espanya/Latam o un grado superior, aqui es cosa de dias. Para los de LATAM, trade degree en ingles, son grados no universitarios, a medio camino entre bachillerato pre universidad, donde se integra/deriva y la propia universidad. Quiero decir, si alguien quisiera poner un terminal tonto para ver correos y demas en un aeropuerto sin riesgo, con webs propias mostrando las RSS de diarios y demas, podria hacerlo sin riesgo a romper nada y presentando una interfaz con raton o adaptada a 'rio' con pantalla tactil cambiando el grosor de los elementos. Lo unico el navegador web y demas, pero si las webs siguieran siendo webs y no abortos Javascript, me atreveria a decir que lo mas complejo seria configurar asociaciones de ficheros con el plumber. Si alguien me llama loco o quijotesco... las instrucciones en en electrodomesticos en Espanya estan en castellano pero los botones en ingles. Todo le mundo sabe que es play, pause, y stop en un video VHS o radiocassete. El programa mas complejo que existe en mi maquina a nivel grafico puede que sea netsurf, y trae 8-10 funciones por menu central y derecho del raton. He visto microondas y hornos con mas funciones. En ingles. Con grill y defrost y demas, y mi madre usandolo sin problema. Si los locos de front hicieramos un clon de Win95 con ajustes para Vdir y demas y parcheando los navegadores para que las descargas fueran a /usr/glenda/down, las ventanas tipo w95 con 'lola', menu de inicio simple, barra de tareas, programa tipo Excel abriendo ficheros spd en ese prog para 9front, un clon de wordpad con Libapanel y libdraw... el 90% de la gente podria usarlo en segundos, al menos para un manejo basico informatico. Se romperian mitos y se veria que a la gente le sobran el 90% de pijadas de Office e incluso Excel. Lo unico Power Point, pero soy partidario de un programa como 'sent' pero para 9front, es decir: - 3 lineas por diapositiva. Concreta. - 0 efectos en la presentacion - 0 estilos perdiendo el tiempo para ponerlo bonito - Una fuente o dos a lo sumo - Graficas hechas con Plot/Graph Se ganaria un 90% de tiempo evitando payasadas de CEOs y comerciales. No tendrian mas narices que ofertar un producto de verdad con un PDF muy simple, de los que se ven en hackatons de OpenBSD y 9front yendo al grano. Por ejemplo, un caso real de una presentacion donde no es un PPT si no el exponer el caso en un PDF y video HD 265: Tienes un coche electrico cojonudo. Lo explicas en 3 lineas por pagina, nuestro coche hace tal y tal, ahorra X bateria respecto al resto, con fotos del coche y luego tras el breve PDF sacas un video, ya no hay pijadas ni chorradas, los clientes entienden: es lo que hay, no nos enganyan, van a saco con las caracteristicas y manejo en vida real en un video. Eso es disenyo y realidad informatica y no el 90% de basura con IA, cursos de IA y ChatGPT y pestes donde fallan bastante salvo el GPT chino donde es una mezcla de IA semantica Y sistema experto de IA clasica donde *SI* entienden el tema a tratar y no repite las palabras como un loro. Plan9/9front son como el LIDL/ALDI: no van con efectos, ni anuncios espectaculares. Los lacteos son buenos y cojonudos relativamente comparados con la competencia (nunca me gustaron los Danone) y no necesitan de costosas campanyas pagando mas por el anuncio que por la verdadera calidad del producto. Igual te cuesta mas hacer la 'lista' de la compra por la falta de familiaridad, pero se ahorra en el coste mental de comprar cosas que no te hacen falta para nada. Un servidor aqui llego a comprarse ropa barata de supermercado, de la funcional, sin logotipos ni adornos pero que luego te dura la de otras marcas la mitad si es que llega. Con 9front me pasa lo mismo. Hay que comerse mas la cabeza, pero gracias a los scripts, solo hay que preocuparse de manejar el gestor rio, vdir y los navegadores. Y tienen un 1% de botones y menus comparados con Firefox, Chrome, Vivaldi... y el texto en los periodicos en Gemini se lee igual, creedme. Y sin paywalls en gemini://gemi.dev, ya os dire como. No tengo adornos a lo Mac OS, ni efectos hechos con IA, el coste del sistema es cero. Pero chateo con gente via XMPP, IRC, veo webs, leo CBZ (comics), PDF's y EPUBs, bajo cosas legales con torrent (hay comics en dominio publico, y musica/peliculas tambien) y gracias a Gemini y Netsurf leo diarios sin tragar 20430430430 toneladas de anuncios, 900 anunciantes via cookies y JS convirtiendo tu PC gaming en el Pentium 3 de tus tios o tus padres si eres Gen-Z. Igual no puedo abrir words o excels, pero puedo usar una maquina remota, guardarlos en txt o CSV y verlos igual. O mejor, en PDF, ya que si no voy a editar un documento, para que narices me lo mandas en un formato editable? Acaba tu trabajo, por favor, el mio no es usar una suite de crear documentos, mi trabajo no es el de un editor, dichos trabajos deberian ser erradicados a mi parecer. En una oficina no deberias maquetas documentos, si no abrir webs simples y rellenar formularios. El resto deberia hacerlo el servidor web que ese es su trabajo, presentar por ejemplo informes finales en PDF con el trabajo hecho. Esa es la razon de la informatica, no? Que impediria montar un servidor web en 9front, crear un formulario con werc y cosas CGI para sacar un PDF hecho en troff? Mas complejidad? Vale, bien, pero es que el 90% de trabajo de oficina es aguantar como tragamos con porquerias como una suite de oficina donde la mayoria de cosas como digo, hoy, hasta en funerarias se hacen via web donde no hay que aguantar el maquetar un documento y ni mucho menos crear un informe cutre desde Excel o Access. La filosofia Unix es superior a eso. Al separar la presentacion de un trabajo de su 'motor', nos permite presentar al usuario una interfaz para tontos y no tener que preocuparnos de lo que hay debajo jamas. Tampoco hace falta preocuparnos de VBA's, de seguridad y viruses con macros de wWord. Para que si en 9front existe el comando rfork y existen cosas como los 'namespaces', es decir, una especie de jaulas donde el usuario solo ve unas carpetas espeficicas del disco o de su propio entorno y el resto esta aislado. Asi se podria poner un servidor web pasando completamente de seguridades complejas y ni mucho menos habria que lanzarlo como usuario con privilegios raros. Y si alguien lo ve inviable incluso con el clon de escritorio de win95 pero en reducido... los macs antiguos tipo mac os 6 eran mas o menos similares en funciones graficas (que no manejo) y la gente se maquetaba revistas desde programas limitados como Quark Xpress. Hoy cualquier mono con libdraw y demas te puede hacer un clon simple del PS cogiendo el codigo de dpaint y anyadiendo filtros usando programas externos... tal como puede hacer Gimp. Y no estamos en tiempos de maquinas de unos 40 mhz, si no de 4000 de varios nucleos, ergo, como varias en paralelo. Se tiran recursos innecesariamente, y sitios como la web de https://xxiivv.com muestran lo mucho que se puede hacer con 9front (y la web de arriba del escritorio con 9front) teniendo paciencia y ganas. Pensareis que asi se limitan las libertades del usuario, al darle programas con interfaces simples. Pero no es mi razon, al contrario. 30 programas simples pueden hacer mucho mas que una suite de Office donde te pierdes al tener un exceso de cosas donde muchas veces se hacen mal y deprisa, al no tener una base integrada independiente del formato. Tu podrias crear una interfaz grafica para EQN y te devuelve un fichero de texto EQN. Abres el editor grafico de documentos de antes, te posicionas en un parrafo, eliges "insertar fichero EQN", te sale un cuadro tipo vdir, lo eliges, y en tu documento te saldria algo como 'enlace a EQN en /usr/glenda/docs/fich.eqn'. Le das a generar PDF, y te sale la ecuacion en tu documento. Maquetado. Integrada. Esa es mi idea de la informatica.