El llarg i sinuós camí

  • Accidents i bricolatge en l’estandardització del programari

VilaWeb
Des de l’aparició del telèfon, els seus inventors van pronosticar l’arribada d’interaccions visuals a llarga distància. En 1924 Alexander Graham Bell va dir que arribaria el dia en què la persona al telèfon podria veure la persona amb la qual estava parlant. No obstant això, l’intent per part d’AT&T de comercialitzar el picturephone en els anys seixanta (en la imatge) va ser un fracàs comercial. / Sergi Valverde
Redacció
24.11.2020 - 05:15

Imaginem que, en escriure una carta d’amor, ens veiérem obligats a escriure oracions amb un nombre fix de caràcters. Oblidem la idea d’utilitzar una prosa complexa o de citar Shakespeare en la nostra obra mestra: si ens passem del límit, la frase es tallarà, haguera o no acabat. Això és el que vam viure tots i cadascun dels estudiants de programació informàtica en les dècades dels vuitanta i noranta del segle passat. En aquell moment era necessari trencar les cadenes de més de vuitanta caràcters en trossos més menuts per a ajustar-se a les limitacions dels editors de text. Això era encara més evident en escriure càlculs complexos en un prestigiós llenguatge de programació anomenat Fortran. A vegades, una equació no es podia escriure en una sola línia, i era necessari partir aquella llarga expressió matemàtica en múltiples trossos. La inserció de molestos salts de línia que interrompien els nostres pensaments semblava una complicació injustificada per a una tasca –la programació informàtica– que ja era (i continua sent) intrínsecament complexa. Per què 80 i no 166 o qualsevol altre nombre de caràcters?

L’origen d’aquesta qüestió és anterior a les pantalles de grandària fixa; radica en la grandària de les targetes perforades amb les quals es processava el cens dels EUA en la dècada de 1890. Aquestes targetes amb vuitanta caràcters per línia s’introduïen en les primeres computadores comercials d’IBM, en els anys cinquanta del segle XX. Els nostres ordinadors personals van heretar el format de columna de vuitanta caràcters, que es va convertir en l’estàndard de facto per a molts de nosaltres. Fins i tot avui dia, en un moment en el qual les pantalles d’alta resolució són tan comunes, els editors de text continuen sent compatibles amb relíquies de maquinari (hardware) que ja no tornarem a utilitzar.

Com hem vist en l’exemple anterior, una casualitat històrica pot deixar una petjada ben fonda en l’evolució tecnològica (Arthur, 1994). Algunes poden ser inofensives, però unes altres provoquen ineficiències associades a tasques subòptimes. Com podem garantir la idoneïtat d’una elecció tecnològica? Una manera de fer-ho és comprovar la llista de bones pràctiques i recomanacions. Un estàndard tecnològic elimina els elements innecessaris de les pràctiques de l’enginyeria i conserva «el que val la pena». Aquests estàndards han estalviat molt d’esforç assegurant-se que els «materials, productes, processos i serveis siguen els adequats per al seu propòsit», tal com predica l’Organització Internacional per a l’Estandardització (ISO). Podem trobar molts exemples d’estàndards útils en la indústria i en enginyeria, on les comunitats d’experts defineixen i actualitzen les seues recomanacions perquè siguen consistents. En essència, la qualitat d’aquests estàndards depèn de la capacitat dels experts per a decidir si les normes i innovacions associades continuen sent útils o no. L’estandardització augmenta l’efi­ciència tecnològica, però també pot prolongar més del compte la vida de les tecnologies existents inhibint qualsevol inversió en innovació (Tassey, 1999). Aconseguir un equilibri òptim entre l’eficiència i la innovació és extremadament difícil, i les prediccions sobre innovació tecnològica han estat fins ara poc fiables. En particular, les innovacions complexes s’enfronten a més obstacles que les simples a l’hora d’aconseguir l’èxit comercial (Schnaars i Wymbs, 2004).

El coll de botella del programari

En l’últim segle hem presenciat una acceleració espectacular en el rendiment computacional, la capacitat d’emmagatzematge digital i les comunicacions electròniques a escala global. La famosa llei de Moore ha marcat l’evolució de les tecnologies de la informació. Això és conseqüència d’uns principis teòrics sòlids: els fonaments conceptuals de la computació continuen essent els mateixos des de la publicació dels textos clàssics d’Alan Turing. D’altra banda, la tendència exponencial del maquinari no s’ha vist reflectida amb innovacions paral·leles en programari (software), que es continuen mesurant en escales de temps humanes. Encara que tant maquinari com programari han crescut en complexitat, la seua evolució presenta una asimetria important (Valverde, 2016). L’actual coll de botella en tecnologies de la informació no és el cost del maquinari, sinó l’obtenció del programari necessari per a fer-lo funcionar (Ensmenger, 2010). El programari dicta la utilitat de les tecnologies de la informació i la seua demanda ha creat un enorme problema econòmic. Molts projectes de programari estan farcits d’errors, accidents i decisions idiosincràtiques (Brooks, 1975). El fracàs recurrent de projectes va portar el sector a definir enfocaments fiables per assegurar el desenvolupament de programari d’alta qualitat (Charette, 2005).

Des de la invenció de la tecnologia de computació en la dècada de 1950, l’estandardització ha estat l’aspiració de moltes associa­cions d’usuaris i professionals de la informàtica. Com en tota disciplina emergent, els professionals estaven ansiosos per demostrar la seua utilitat social. En particular, els primers passos dels programadors en l’estandardització es van centrar en la interoperabilitat del programari informàtic; és a dir, en la possibilitat d’intercanviar i reutilitzar programari entre diferents ordinadors. Per exemple, l’estàndard de sistema operatiu MS-DOS va donar lloc a l’adopció generalitzada dels ordinadors personals (PC), que al seu torn van conduir a moltes innovacions posteriors, com l’aparició d’Internet i la World Wide Web. El creixement exponencial del mercat dels ordinadors i la proliferació d’ordinadors incompatibles va augmentar la competència en el món del programari. S’esperava que l’estandardització facilitara l’aparició de programari no sols compatible sinó també més econòmic. Per a això, els estàndards es van centrar principalment en dos aspectes: escriure i mantenir codi (o «desenvolupament de programari») i les eines per a fer costat a aquest procés (per exemple, els llenguatges de programació i els jocs de components de programari reutilitzable). Però si bé la interoperabilitat dels programes informàtics va tenir un gran èxit, l’adopció tan escassa d’estàndards en desenvolupament de programari suggereix la presència de límits que encara no comprenem prou.

Llig l’article complet en la web de Mètode.

Sergi Valverde. Expert en sistemes complexos, doctorat en Física Aplicada i investigador de l’Institut de Biologia Evolutiva (UPF-CSIC) de Barcelona (Espanya), on lidera el Laboratori de l’Evolució Tecnològica (ETL). El seu grup de recerca és pioner en l’estudi de les grans transicions evolutives mitjançant la comparativa de sistemes biològics i artificials. La seua recerca multidisciplinària integra diverses àrees de coneixement, des de la teoria de xarxes fins a l’ecologia teòrica i la simulació computacional dels processos evolutius. És membre de la junta de la Xarxa Catalana per a l’Estudi dels Sistemes Complexos (complexitat.cat).

Què és Mètode?

Recomanem

La premsa lliure no la paga el govern. La paguem els lectors.

Fes-te de VilaWeb, fem-nos lliures.

Fer-me'n subscriptor
des de 75€ l'any