cultura lliure cultura lliure
Inici  | Llibres |  Música   |   Sobre Culturalliure.cat    

Inici » Llibres » Al principi hi hagué la línia d’ordres » Memento mori


16  Memento mori



Un cop la màquina Linux ha acabat de vomitar l'argòtic telegrama d'obertura, em demana que iniciï una sessió amb un nom d'usuari i una contrasenya. En aquest moment la màquina encara executa la interfície de línia d'ordres, amb lletres blanques sobre una pantalla negra. No hi ha finestres, menús ni botons. El sistema no respon al ratolí... ni tan sols sap que hi ha un ratolí. Tot i així, en aquest punt encara és possible executar una pila de programari. L'emacs, per exemple, existeix tant en versió de línia d'ordres com d'interfície gràfica d'ususari (de fet hi ha dues versions d'interfície gràfica que reflecteixen una mena de cisma doctrinal ocorregut entre Richard Stallman i alguns hackers que es van afartar d'ell). Passa el mateix amb molts altres programes de l'Unix. Molts ni tenen interfície gràfica d'usuari, i molts dels que en tenen es poden executar des de la línia d'ordres.

 

Naturalment, com que el meu ordinador només té un monitor, només puc veure una línia d'ordres, de manera que podríeu pensar que només puc interactuar amb un programa alhora. Però si premo la tecla Alt i la tecla de funció F2 de la part de dalt del teclat se m'obre una nova pantalla negra, buida i a punt, amb un indicador d'inici de sessió a la part superior. Si inicio una altra sessió, puc executar qualsevol altre programa i després prémer Alt-F1 per tornar a la primera pantalla, que haurà estat fent el mateix que feia quan l'he deixada. O puc fer Alt-F3 i iniciar una sessió en una tercera pantalla, o en una quarta o una cinquena pantalla. En una d'aquestes pantalles podria obrir una sessió amb el meu usuari, en una altra com a root (l'administrador del sistema) i en una altra podria tenir una sessió oberta en un altre ordinador a través d'Internet.

 

Cadascuna d'aquestes pantalles s'anomena, en l'argot de l'Unix, un tty, que és una abreviatura de l'anglès teletype (”˜teletip'). De manera que quan faig servir el sistema Linux d'aquesta manera retorno a aquella petita sala del meu institut d'Ames on vaig començar a programar fa vint-i-cinc anys, amb la diferència que el tty és més silenciós i més ràpid que un teletip, i pot executar programari molt més potent, com l'emacs o les eines de desenvolupament del GNU.

 

És fàcil (fàcil segons els estàndards de l'Unix, no pas en els d'Apple/Microsoft) configurar una màquina Linux perquè obri directament la interfície gràfica d'usuari en l'arrencada. D'aquesta manera no es veu mai la pantalla tty. Jo però, encara faig que el meu ordinador arrenqui amb la pantalla de teletip de blanc sobre negre, com una mena de memento mori informàtic. Hi va haver una època en què fou moda que els escriptors tinguessin una calavera sobre l'escriptori com a recordatori que eren mortals, que tot en ells era vanitat. La pantalla tty em recorda que aquesta mateixa filosofia és aplicable a les elegants interfícies d'usuari.

 

El sistema X Windows, que és la interfície gràfica d'usuari de l'Unix, ha de poder ser compatible amb centenars de diferents targetes de vídeo i de diferents jocs de xips, amb una gran quantitat de memòria incorporada i de diferents tipus de bus de la placa base. De la mateixa manera, existeixen centenars de diferents tipus de monitors al mercat de productes nous i de segona mà, cadascun d'ells amb especificacions diferents, de manera que probablement hi ha més d'un milió de combinacions possibles de targeta i monitor. L'única cosa que tenen en comú és que tots funcionen en mode VGA, que és l'antiga pantalla de línia d'ordres que apareix durant uns segons quan s'obre el Windows. De manera que el Linux sempre s'obre en mode VGA, amb una interfície de teletip, perquè d'entrada no té ni idea del tipus de maquinari que hi ha connectat a l'ordinador. Per tal de superar el teletip de vidre i entrar a la interfície gràfica d'usuari cal dir al Linux el tipus exacte de maquinari que hi ha connectat. Si t'equivoques, en el millor dels casos apareixerà una pantalla en blanc i, en el pitjor, podries arribar a malmetre el monitor pel fet d'haver-li enviat senyals que no sap gestionar.

 

Quan vaig començar a fer servir el Linux això s'havia de fer a mà. Un cop vaig passar gairebé un mes intentant que em funcionés un monitor estrambòtic i vaig omplir gairebé un quadern de tapa dura amb notes gargotejades de manera cada cop més desesperada. Avui dia la majoria de distribucions del Linux porten un programa que automàticament reconeix la targeta de vídeo i autoconfigura el sistema, de manera que posar en funcionament el sistema X Windows és quasi tan senzill com instal·lar una interfície gràfica d'usuari d'Apple/Microsoft. La informació crucial s'inclou en un fitxer (un fitxer ASCII, és clar) que es diu XF86Config, al qual val la pena fer un cop d'ull encara que la vostra distribució us el creï automàticament. Per a la majoria de gent té l'aspecte d'un encanteri críptic i sense significat, fet que justifica donar-hi un cop d'ull. Els sistemes Apple/Microsoft han de tenir la mateixa informació per a poder obrir la seva interfície gràfica d'usuari, però segurament deu estar amagada en algun lloc i probablement en un fitxer que ni es deu poder obrir ni llegir amb un editor de text. Tots els fitxers importants que fan que els sistemes Linux funcionin són a l'abast i al descobert. I sempre són fitxers de text ASCII, de manera que no calen eines especials per a llegir-los. Es poden consultar sempre que es vulgui, cosa que està bé, però també es poden potinejar i, en conseqüència, deixar el sistema totalment inoperatiu, cosa que no està tan bé.

 

En qualsevol cas, suposant que el meu fitxer XF86Config és això que hem dit, introdueixo l'ordre "startx" per iniciar el sistema X Windows. La pantalla es queda en blanc un minut, el monitor fa estranys sorolls espasmòdics i després es reconstitueix en forma d'un escriptori gris i en blanc amb un cursor de ratolí al mig. Alhora també s'inicia un gestor de finestres. L'X Windows és un programari de nivell força baix que proporciona una infraestructura sòlida i industrial per a la interfície gràfica d'usuari. Però no crea finestres. D'això se n'ocupa una altra categoria d'aplicacions que treballen sobre l'X Windows, anomenades gestors de finestres. N'hi ha diversos de disponibles, tots gratuïts, és clar. El clàssic és el  twm (Tom's Window Manager), però existeix una variant més petita i suposadament més eficient que es diu fvwm, i és la que jo faig servir. Tinc l'ull posat en un gestor de finestres totalment diferent anomenat Enlightenment (Il·lustració), que podria esdevenir el producte tecnològic més cridaner que hagi vist mai, pel fet que (a) és per al Linux, (b) és programari lliure i gratuït, (c) l'està desenvolupant un nombre reduït de hackers obsessionats i (d) té un aspecte superatractiu: és el tipus de gestor de finestres que podria aparèixer en segon terme en una pel·lícula d'alienígenes.

 

En qualsevol cas el gestor de finestres fa d'intermediari entre l'X Windows i el programari que l'usuari vulgui fer servir. Dibuixa els marcs de les finestres, els menús, etc., mentre són les pròpies aplicacions les que s'encarreguen del contingut en si de les finestres. Les aplicacions poden ser de qualsevol tipus: editors de text, navegadors web, paquets gràfics o programes d'utilitat, com ara un rellotge o una calculadora. Dit d'una altra manera, a partir d'aquest moment tens la sensació que t'han llançat a un univers paral·lel molt semblant al d'Apple o Microsoft, però lleugerament i persistentment diferent. El programa de gràfics més important per a Apple/Microsoft és l'Adobe Photoshop, però en el Linux és una cosa anomenada GIMP. En lloc del paquet ofimàtic Microsoft Office es pot comprar una cosa anomenada ApplixWare. Molts dels paquets de programari comercials, com ara Mathematica, Netscape Communicator i Adobe Acrobat, disposen de versions per al Linux i, segons com es configuri el gestor de finestres es pot fer que s'assemblin i es comportin exactament igual que ho farien en el MacOS o el Windows.

 

Però hi ha un tipus de finestra en la interfície gràfica d'usuari del Linux que és poc freqüent o inexistent en altres sistemes operatius. Aquestes finestres s'anomenen “xterm” i només contenen línies de text (aquesta vegada text negre sobre un fons blanc, encara que es poden canviar els colors). Cada finestra xterm és una interfície de línia d'ordres separada, un tty en una finestra. Per tant, fins i tot quan estem del tot posats en mode d'interfície gràfica d'usuari, es pot parlar a la màquina Linux a través d'una interfície de línia d'ordres.

 

Hi ha molts bons programes per a l'Unix que no tenen cap mena d'interfície gràfica d'usuari. Això pot ser perquè es van crear abans que l'X Windows estigués disponible, perquè els que els van escriure no van voler passar pel tràngol de crear una interfície gràfica d'usuari o senzillament perquè no la necessiten. En qualsevol cas aquests programes es poden executar escrivint-ne el nom a la línia d'ordres d'una finestra xterm. L'ordre whoami, esmentada anteriorment, n'és un bon exemple. N'hi ha un altre que es diu wc (sigla de l'anglès word count, recompte de paraules) que senzillament dóna el nombre de línies, paraules i caràcters d'un fitxer de text.

 

La capacitat d'executar aquests petits programes d'utilitat des de la línia d'ordres és una gran virtut de l'Unix, que difícilment serà duplicada pels sistemes operatius de pura interfície gràfica d'usuari. L'ordre wc és un bon exemple d'allò que resulta fàcil escriure amb una interfície de línia d'ordres. Probablement no consta de més d'unes quantes línies de codi, i un bon programador probablement la podria escriure en una sola línia. En forma compilada no ocupa més d'uns quants bytes d'espai al disc. Però el codi necessari perquè aquest mateix programa posseeixi una interfície gràfica d'usuari segurament ocuparia centenars o fins i tot milers de línies, depenent de fins a quin punt volgués el programador que el programa fos vistós. Compilat en un programa executable, tindria un gran volum de codi només per a la interfície gràfica d'usuari. Obrir-lo seria lent i ocuparia molta memòria. Senzillament no surt a compte fer-ho, de manera que el programa wc mai no s'escriuria com a programa independent. En lloc d'això els usuaris s'haurien d'esperar que aparegués una funció per a comptar paraules en un paquet de programari comercial.

 

Les interfícies gràfiques d'ususari solen imposar un gran volum de codi a qualsevol programa, fins i tot als més petits, fet que condiciona totalment l'entorn de programació. Deixa de tenir sentit escriure petits programes d'utilitat. En lloc d'això aquests funcions queden absorbides en paquets de programari òmnibus. A mesura que les interfícies gràfiques d'usuari es fan més complexes i imposen cada cop un volum de codi més gran, aquesta tendència es va fent més omnipresent i els paquets de programari són cada cop més colossals. Arribats a un cert punt es comencen a fusionar entre ells, tal com el Microsoft Word, l'Excel i el PowerPoint s'han fusionat en el Microsoft Office: i es converteixen en un espectacular hipermercat de programari ubicat als afores, a tocar d'un poble ple de petites botiguetes amb les finestres tapiades.

 

No és una bona analogia, perquè darrere de cada botigueta tapiada hi ha un botiguer de tota la vida que ha hagut de tancar la barraca. És evident que res d'això no passa quan el “wc” queda absorbit en una de les innombrables opcions de menú del Microsoft Word. L'únic inconvenient real és una pèrdua de flexibilitat per a l'usuari, però evidentment es tracta d'una pèrdua que passa desapercebuda o que no preocupa la majoria d'usuaris. L'inconvenient més gran de la política dels hipermercats de programari és que la majoria d'usuaris només vol o necessita una minúscula part del que contenen aquests paquets de programari gegants. La resta és palla, un pes mort. Tot i així, l'usuari del compartiment següent tindrà una opinió totalment diferent d'allò que és i no és útil.

 

L'altra cosa important que cal esmentar és que Microsoft ha inclòs una funció genuïnament útil al paquet de l'Office: un paquet de programació en Basic. El Basic és el primer llenguatge informàtic que vaig aprendre, a l'època que feia servir la cinta de paper i el teletip. Gràcies a la versió del Basic que ve amb l'Office, es poden escriure programets d'utilitat propis que poden interactuar amb totes les filigranes, floritures, bagatel·les i futilitats de l'Office. El Basic és més senzill que els llenguatges que s'acostumen a fer servir en la programació de línia d'ordres de l'Unix, i l'Office ha arribat a moltíssima més gent que no pas les eines del GNU. Per tant és possible que aquesta funció de l'Office, a la llarga, generi més activitat hacker (programació informàtica) que el GNU.

 

Però ara parlo de programes d'aplicació, no de sistemes operatius. I com he dit abans, els programes d'aplicació de Microsoft acostumen a ser molt bons. Jo no els faig servir gaire perquè em trobo totalment fora del sector de mercat al qual s'adrecen. Si Microsoft fes un paquet de programari útil per al meu gust, realment li hauria arribat el moment d'anar-se'n a l'aigua, ja que jo sóc un segment de mercat format per un sol individu.



Taula de continguts
blocs | capítols  | completa ]



PortadaPORTADA
1. Introducció1. INTRODUCCIó
2. Cotxes mgb, tancs i batmòbils2. COTXES MGB, TANCS I BA...
3. El llançador de bits3. EL LLANçADOR DE BITS
4. Interfícies gràfiquesd'usuari4. INTERFíCIES GRàFIQUESD...
5. Lluita de classes a l'escriptori5. LLUITA DE CLASSES A L'...
6. Pot de melmelada o fossa de quitrà, el quepreferiu6. POT DE MELMELADA O FOS...
7. La tecnosfera7. LA TECNOSFERA
8. La cultura d'interfície8. LA CULTURA D'INTERFíCI...
9. <i>Morlocks</i> i elois al teclat9. MORLOCKS I ELOI...
10. L'esvaïment de la metàfora10. L'ESVAïMENT DE L...
11. Linux11. LINUX
12. La hole hawg dels sistemes operatius12. LA HOLE HAWG DELS SIS...
13. La tradició oral13. LA TRADICIó ORAL
14. Xoc de sistema operatiu14. XOC DE SISTEMA OPERAT...
15. Fal·libilitat, expiació, redempció, confiança i altres conceptes tècnics arcans15. FAL·LIBILITAT, EXPIAC...
16. Memento mori 16. MEMENTO MORI
17. La fatiga del setciències17. LA FATIGA DEL SETCIèN...
18. Être18. ÊTRE
19. Quota mental19. QUOTA MENTAL
20. El dit petit dret de déu20. EL DIT PETIT DRET DE ...



logo_cc.png

logo_secretaria2.png

Valid XHTML 1.0 Transitional