Elogi del programa
La paraula ‘programa’ prové del grec i del llatí ‘programma’, que significa ‘declaració per escrit d’allò que es projecta fer’. Actualment, ‘programa’ es fa servir en diversos camps, però destaca el seu ús en la informàtica i la genètica, les ciències i tècniques contemporànies de més repercussió en les societats i en les persones.
En informàtica, un programa és un codi seriat d’instruccions per a fer càlculs, els maons del coneixement científic. En genètica, un programa és un codi d’instruccions per a fabricar proteïnes, els maons de la vida. Com que és present en àmbits tan significatius, el concepte de programa constitueix una fita en la història de la ciència i de la tecnologia.
codi digital
Al segle XIX, el concepte de programa va adquirir rellevància quan l’enginyer francès Joseph Marie Jacquard va construir un sistema de targetes perforades per dirigir els moviments d’un teler. Amb aquest sistema es podia canviar el patró d’un teixit sense haver de canviar el teler sencer, només calia canviar —programar— les perforacions de les targetes.
Inspirat per aquest sistema, el matemàtic anglès Charles Babbage va concebre una màquina de calcular que incloïa, per primera vegada, un programa en el sentit informàtic modern.
El seu projecte de ‘Màquina Analítica’ incloïa dues seccions a les quals va anomenar ‘store’ (magatzem) i ‘mill’ (molí). Aquests termes, molt il·lustratius per a l’època, s’han perdut, però encaixen perfectament amb el seu sentit modern: el magatzem és una memòria amb les dades i el molí un processador amb el programa; per això aquella màquina, tot i que no va arribar a construir-se, és considerada la primera computadora de la història, sobretot per la seva qualitat de màquina programable.
En una computadora moderna, la memòria i el programa (executat pel processador) estan codificats en forma de nombres en base 2 (zeros i uns: bits), una representació idònia per a ser manejada electrònicament, per això el fabulós èxit d’aquesta tecnologia.
Hi ha una infinita varietat de programes digitals. Es poden distingir per la seva funció: n’hi ha d’assistents, que ajuden a fer una activitat, intermediaris, que permeten la comunicació, i generatius, que creen nova informació. De les tres funcions, la més rellevant és la generativa.
L’anomenada ‘intel·ligència artificial’ (IA) fa gala d’aquesta qualitat. Àrees com els llenguatges naturals, l’aprenentatge automàtic, la representació del coneixement, l’estudi de fenòmens complexos… han progressat enormement gràcies a aquesta tecnologia. La IA envaeix múltiples camps científics i tècnics; fins i tot, envaeix l’art, per bé que depèn del que sigui considerat com a tal. Més enllà de les emoticones, fins ara ningú no ha escrit un programa per a simular les emocions i els sentiments humans, ja que no se sap com codificar-les.
‘L’últim selfie pres a la Terra’
Il·lustració realitzada per un programa generatiu després d’introduir-hi aquest títol
Scott Detweiler/Midjourney, 2022
codi genètic
L’arrel ‘gen’ de la informàtica generativa emparenta el codi digital amb el codi genètic; en aquest cas, el programa no és un artifici sinó un procediment natural que genera la vida.
La vida es desenvolupa i evoluciona en activar-se una sèrie de programes que, per procediments químics, creen les proteïnes, els constituents bàsics de tots els organismes.
El seu paper central en les estructures i el funcionament biològics va ser reconegut a principis del segle XIX, quan els químics van encunyar el nom d’aquestes substàncies a partir de la paraula grega ‘proteis’, que significa ‘ocupar el primer lloc’.
El primer a revelar el mecanisme de la transmissió genètica va ser el frare austríac Gregor Mendel experimentant l’encreuament de llavors. Uns anys més tard, al començament del segle XX, es va encunyar el terme ‘genètica’ per a designar la ‘nova ciència de l’herència’.
Aleshores va començar la formidable aventura de la biologia molecular. En la seva història, tan recent com la de la informàtica, hi destaca el descobriment, el 1953, de l’estructura en doble hèlix del codi genètic, un descobriment que constitueix una prova material de la teoria de l’evolució del naturalista anglès Charles Darwin.
El cos humà consta d’uns 30 bilions de cèl·lules. Cada cèl·lula acull una mateixa macromolècula, l’ADN, que conté uns 20.000 gens amb les instruccions per a fabricar les peces que componen el cos: teixits, ossos, humors… Doncs bé, un gen és un programa.
L’activació d’un gen provoca una sèrie de reaccions químiques el resultat de les quals és una proteïna, és a dir, una cadena d’aminoàcids que exerceix una funció vital bàsica. Hi ha proteïnes defensives (la queratina), catalítiques (enzims per a la digestió), motores, etc. El cos humà es regeix per unes 10.000 proteïnes diferents, les receptes de les quals estan codificades en els gens.
Un gen consisteix en una seqüència de triplets, anomenats ‘codons’, que són combinacions de quatre nucleòtids (compostos de carboni, hidrogen, oxigen, nitrogen i fòsfor) que es representen amb lletres: A (adenina), T (timina), G (guanina) i C (citosina). Hi ha, doncs, 4x4x4 = 64 triplets possibles, per tant, es poden generar 64 aminoàcids, tot i que el cos humà només n’inclou uns 20. Un codó inclou la recepta de l’aminoàcid així com la seva posició en la cadena de la proteïna. De manera que es pot dir que els codons són les instruccions bàsiques de la vida.
La memòria d’una computadora pot acollir qualsevol combinació de bits, però en el programa només hi caben les combinacions que la computadora entén. Un processador comú funciona mitjançant 50-80 instruccions bàsiques —tallar, copiar, enganxar, moure, operacions aritmètiques…— curiosament, un nombre similar al del codi genètic.
codi sobre codi
Un programa digital conté referències a programes menors que, alhora, criden a altres programes més breus i, així successivament, fins a assolir l’execució d’instruccions bàsiques. Hi ha programes molt llargs, que solen anomenar-se aplicacions, i programes molt curts, com els bots. El programari és com un edifici, es construeix per nivells, i en els fonaments hi ha els càlculs bàsics, executats pel maquinari del processador.
Aquesta estructura arborescent es dona també en el codi genètic. L’òvul d’un animal, per exemple, és en realitat un superprograma que conté programes i subprogrames, l’un damunt de l’altre, capaç de crear una infinita varietat d’individus, cadascun amb el seu ADN i els seus gens.
Com apunta el científic Javier Sampedro: “Tota l’enlluernadora diversitat animal d’aquest planeta, des dels àcars de la moqueta fins als ministres de Cultura passant per les escopinyes i els cucs que les parasiten, no són més que ajustaments menors d’un meticulós pla de disseny que l’evolució va inventar una vegada.” Aquest ‘pla de disseny’ està escrit en els gens de totes les cèl·lules d’un ésser viu; s’estima que ha donat lloc a uns 10~14 milions d’espècies, de les quals només 1,2 milions estan descrites.
codis amics
La genètica té una dimensió física i experimental, però el seu enorme progrés de les darreres dècades és degut, precisament, a la digitalització dels models genètics.
L’ADN, el complex de programes per a fabricar proteïnes, és una molècula molt gran. La cadena de codons de l’ADN humà es representa mitjançant una seqüència de 3.000 milions de lletres (A, T, G, C); un text que, escrit amb una tipografia normal, ocuparia uns 3.000 km. Per això, per tractar aquest codi —un cop digitalitzat— i la seva combinatòria cal una informàtica molt potent, basada en supercomputadores.
El primer ADN desxifrat —seqüenciat, com diuen els biòlegs— d’un organisme va ser el del llevat (1996), un fong microscòpic que conté uns 6.000 gens. Per ben conegut i fàcil de manipular, l’humil però actiu llevat és una de les criatures llançades a l’espai per conèixer l’impacte de les radiacions còsmiques sobre l’ADN.
Cada color representa un nucleòtid A, T, G o C
Projecte Genoma Humà , 2010
El símil digital permet, per exemple, provar proteïnes, saber com es comportarien en la realitat. El disseny de medicaments, per exemple, no es concep sense la seva assistència.
La genètica també té la seva repercussió conceptual en la informàtica. Hi ha uns programes digitals anomenats, precisament, ‘genètics’, que simulen una població d”individus’ regida per les lleis de l’evolució —reproducció, mutació, recombinació i selecció—. Aquest tipus de programes resolen amb eficàcia certs problemes d’optimització de recursos.
Els virus són uns éssers de només 20 gens capaços d’infectar mitja humanitat. En informàtica, als bots igualment malèvols se’ls coneix, justament, com a virus.
Només al voltant de l’1,5% de l’ADN d’un humà codifica proteïnes, la resta són gens anomenats ‘no codificants’, és a dir, que no serveixen —aparentment— per a res.
Aquesta matèria fosca de l’ADN també té el seu paral·lel en el món digital. En les computadores hi ha muntanyes de codi que no s’empra per a res, bé perquè està obsolet, bé perquè no interessa a l’usuari comú, que sol manejar uns pocs programes. En el ciberespai també abunden les memòries i els programes inútils.
L’anomenada ‘Llei de Moore’ estableix que les computadores doblen la memòria i la potència cada dos anys. Aquest creixement exponencial ha sigut el motor del creixement explosiu de les tecnologies digitals. Doncs bé, la quantitat d’informació de seqüències d’ADN disponible per a la comunitat científica segueix un augment exponencial similar.
La culminació de similituds tindrà lloc quan, tal com s’investiga actualment, s’aconsegueixi emmagatzemar informació en l’ADN, és a dir, representar-la mitjançant un codi quaternari de nucleòtids (A, T, G, C). El resultat teòricament previst es una memòria biològica un milió de vegades més densa que la memòria electrònica i un cost energètic i ambiental de fabricació molt menors.
La profunda significació del programa, digital o genètic, planteja qüestions que van més enllà de la computadora o del laboratori. Per exemple, com assegurar una informàtica respectuosa amb les persones?, quins criteris ètics han d’inspirar a l’enginyeria genètica? Els reptes estan servits; en matèries tan sensibles, n’hi ha molt per a reflexionar. S’afegeixen als altres reptes plantejats per la ciència i tecnologia modernes, sovint avançades, per bé i per mal, a les mentalitats i als costums dels humans.
addenda
Comparada amb la màquina genètica, una computadora, per potent que sigui, no és més que una màquina de calcular l’objectiu de la qual és simular una idea o una activitat humana.
L’objectiu del codi genètic, en canvi, és molt més transcendental: la conservació de la vida. Tanmateix, també podria ser la conservació del mateix codi, cosa més aviat inquietant per als éssers amb consciència de viure. Com apunta el biòleg islandès Kári Stefánsson: “És clar que l’ADN no existeix per a prestar servei als éssers vius. Són els éssers vius els qui existeixen per a servir a l’ADN. El propòsit de la vida és preservar l’ADN. No és gaire romàntic, però no hi ha Déu. I és una pena, perquè seria útil tenir-ne un”.
A propòsit, el físic nord-americà Francis Collins va anomenar al codi genètic el ‘llenguatge de Déu’. Donada la seva ubiqüitat planetària, el codi digital seria doncs el ‘llenguatge de la humanitat’.
El cert és que ambdós llenguatges, tant el celestial com el mundà, han estat creats, a fi de comptes (mai millor dit, perquè el tema va de comptes), per un mateix metaprograma enterament natural: l’admirable evolució biològica.