posts - 644, comments - 2003, trackbacks - 137

My Links

News

Raffaele Rialdi website

Su questo sito si trovano i miei articoli, esempi, snippet, tools, etc.

Archives

Post Categories

Image Galleries

Blogs

Links

Gli standard e i loro danni

Da pochi anni ci si riempie la bocca della onnipotente parola "standard". Suona bene, zittisce chiunque, ha persino vincolato le scelte delle tecnologie e dei prodotti del grande gigante Microsoft (e non solo) che sembrava poter vivere di sole tecnologie proprietarie. Sembra tutto bello ma ... (c'è sempre un ma) ... spesso gli standard sono una vera schifezza.

Uno dei difetti maggiori di molti standard è quello di definire delle casistiche che poi però non vengono implementate da nessuno in quanto inutili o eccessivamente complesse. SMTP così come tantissimi standard definiti nelle RFC cadono pienamente in questo caso (SMTP cade in una lista infinita di casistiche negative, ma lascio perdere perché andrei OT).

Poi si passa allo standard scritto male, come le prime (solo?) versioni di HTML e CSS, che hanno provocato interpretazioni opposte da parte degli implementatori, con risultati disastrosi. Rimanendo nel mondo dei conformi allo standard ed allo stesso tempo incompatibili tra loro non si può non citare il protocollo FAX o il distrubuito secondo CORBA con le sue enne differenti implementazioni.

Andiamo avanti e scopriamo che ID3, lo standard per il tagging dell'audio presente nei file MP3, nell'anno del signore 2006 usa ancora campi a bit ed un formato binario.
Perché biasimo il formato binario, proprio io che mi sono guadagnato la pagnotta con assembler e C++ dagli anni '80? Semplice perché un formato XML consente la validazione e la lettura del formato in 30 secondi, mentre l'implementazione dell'algoritmo necessita almeno un paio di giorni di lavoro.
Per la cronaca a questo link si dice che XML per ID3 non viene usato per non rompere la compatibilità con le versioni precedenti, ma allo stesso tempo la versione 4.0 di ID3V2 è incompatibile con la versione 3.0 ... pazzesco.

Poteva poi mancare SQL? Un linguaggio la cui versione standard è di fatto inutilizzabile in progetti che abbiano una certa dignità.

RTF è un esempio di standard che ha funzionato, ormai obsoleto ma poco diffuso solo per il fatto che è nato in casa Microsoft, e allora tutti a snobbarlo. Altro esempio di partigianeria è quello di Ajax, basato sul componente XmlHttp di Microsoft... abbiamo dovuto però aspettare che lo usasse Google perché venisse implementato in tutti i browser ... vergogna.

PDF è una giungla e ho già espresso qui perché ne sono contrariato.

E XML allora, non è un buon esempio di standard? Si, certo ma guardiamo alle sue spalle e troviamo SGML che molto più di 20 anni gli ha aperto la strada e testato nella pratica le sue caratteristiche. Inoltre XML è semplice ed anche questo è dovuto all'esperienza su SGML.

La colpa è di chi scrive cattivi standard, di chi permette all'implementatore di nascondersi dietro le ambiguità, di chi non segue uno standard solo perché è scritto da Microsoft o Sun, di chi non provvede ai dati per poter eseguire unit testing ed assicurare una corretta implementazione, di chi se li fa pagare (ma che standard è allora?), etc. etc.

Certamente XML non è l'unico esempio di standard che funzionano. Prendo a caso png e zlib che guarda caso sono proprio quelli in cui ci sono implementazioni reali, scritti non solo nei whitepaper ma anche nel codice e per tutti gli OS.

Allora forse il punto è che è troppo facile fare gli architetti della torre di babele. I bravi architetti sono anche ingegneri e muratori.

Print | posted on martedì 29 agosto 2006 14:20 |

Feedback

Gravatar

# re: Gli standard e i loro danni

Concordo con tutto, soprattutto con l'ultima frase, a cui aggiungerei anche idraulici... visto che ogni tanto bisogna anche saper tappare qualche falla...
29/08/2006 14:49 | Lorenzo Barbieri
Gravatar

# re: Gli standard e i loro danni

Parole sante, Raf!!
29/08/2006 15:07 | Davide Senatore
Gravatar

# re: Gli standard e i loro danni

Una altra prova per dimostrare che il mondo software non n’è per niente maturo !
29/08/2006 15:12 | Rochdi CHAKROUN
Gravatar

# re: Gli standard e i loro danni

Sono d'accordo, ma le difficoltà sono anche intrinsiche. Standardizzare, in un mondo che si innova ad una velocità furiosa è cosa ben difficile. Gli standard sono condannati ad evolversi, ed è facile capire che non sempre è possible farlo in backward compatibility.
Certamante quanto più uno standard è ben ponderato quanto più sarà robusto, ma se il trand fosse quello di standard più duraturi io penseri che il tasso di innovazione stia scendendo.

m.
29/08/2006 16:06 | Matteo
Gravatar

# re: Gli standard e i loro danni

Spesso capita che lo "standard" diventa obsoleto proprio quando viene definito, un po come capita alle applicazioni, che, non appena ultimate, gli si vorrebbe mettere mano per migliorarle.
Lo "standard" diventa standard in base al suo livello di profondità. Sono standard "strong" i concetti. i metodi, le forme .. sono standard "medium" i protocolli, i formati dei files .. sono "light" invece, le applicazioni, le interfacce, ecc..

29/08/2006 16:14 | Marco sigot
Gravatar

# Re: Gli standard e i loro danni

questo post apre tanti punti su cui dibattere.<br />è banale sottolineare che sono d'accordo con ciascuno di voi al 100%.<br />Standardizzare significa dare dei paletti entro i quali tutti, volenti o nolenti, dobbiamo rimanere. Standardizzare è un compito difficilissimo, perchè il mondo IT è talmente veloce che bisogna inseguire sempre le ultime novità. La standardizzazione di HTML ne è un esempio: ognuno ha preferito fare di testa sua.<br />In un mondo dove tutto corre, la standardizzazione tenta di rallentare un po' le cose, di tracciare un perimetro ben definito per fare in modo che tutti possiamo ragionare allo stesso modo, per un po' di tempo. A volte penso che nel nostro caso, la standardizzazione sia un vero e proprio ossimoro.
Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET