A che punto è bello provare a reinventare uno standard? [chiuso]

2

Dai un'occhiata a questa immagine di XKCD.com

Ibrowsersonounbuonesempiodiquesto.Mentresviluppositiwebperloro,devocercaretragli"standard" unici per ciascuno per assicurarmi che i miei siti siano completamente compatibili.

Quando si sviluppa un nuovo programma (per competere con i prodotti esistenti), posso vedere le persone che pensano che la loro idea valga la pena di inserirla in un prodotto finale che altri prodotti vedranno i vantaggi e includeranno anche questo. Ovviamente questo non è sempre il caso (i browser, sono ancora una volta un buon esempio). Alcune funzionalità sono ignorate dai browser Webkit e alcuni dai browser Gecko, eppure IE tende a ignorare tutto in modo abbastanza schietto. In realtà, queste nuove "idee" o impianti tendono a causare problemi all'utente finale.

Ora, a volte queste idee sono importanti da includere. Senza idee, non ci sarebbero cambiamenti e senza cambiamenti, nessun avanzamento o miglioramenti positivi.

A che punto vale un'idea / caratteristica da implementare. Cosa decide se una caratteristica è degna di diventare "standard"?

    
posta FreeSnow 25.07.2011 - 02:20
fonte

4 risposte

13

Questa è una domanda molto confusa. All'inizio ti sembra di riferirti al concetto di uno standard tecnico ma la maggior parte del contenuto della domanda sembra riguardare più la scelta quali caratteristiche implementare nel tuo prodotto. Queste sono due discussioni completamente separate.

In poche parole:

  • A meno che tu non sia un organismo di standard riconosciuto dal settore come il W3C, non puoi inventare uno standard, almeno non usare la definizione comune di "standard" (cioè un standard del settore come, ad esempio, HTTP). Potresti avere uno standard interno e puoi proporlo come standard di settore, ma ciò non significa che nessun altro lo adotterà. Uno "standard" privato è più simile a una politica .

  • Vale la pena ignorare deliberatamente (non necessariamente reinventare) uno standard del settore se si conoscono già gli standard del settore esistenti e si è certi che nessuno di essi soddisfi le proprie esigenze. In altre parole, se reinventare la ruota risolverà un problema reale o darà alla tua azienda un vantaggio competitivo, allora fallo con tutti i mezzi, ma non farlo per ignoranza.

  • Vale la pena implementare una funzionalità (domande di "standard" a parte) se sta per (a) generare direttamente entrate o (b) rendere il prodotto più competitivo con gli altri sul mercato e se il reddito stimato / valore competitivo è significativamente superiore al costo stimato per implementarlo. Quella domanda deve essere risolta caso per caso, e solo tu puoi rispondere. Se non puoi, assumi qualcuno che può o lavora per qualcuno che può farlo, perché non andrai molto lontano nel mondo del software senza almeno un piccolo esperto di business.

risposta data 25.07.2011 - 03:49
fonte
4

all'altra estremità dello spettro della striscia xkcd è

  • prima : non esiste uno standard che supporti il mio caso d'uso
  • consente di crearne uno che possa essere utilizzato anche in generale
  • dopo : nuovo standard in competizione

i linguaggi di programmazione sono un buon esempio di questa mentalità

    
risposta data 25.07.2011 - 03:02
fonte
0

Bene, l'XKCD riassume virtualmente l'argomento contro gli standard.

Sono tutto per standard come ANSI e W3C, in termini di applicazioni / design basati sul web. Un esempio che ho trovato oggi è che IE apre o esegue e file .exe direttamente dai browser su una rete intranet. Eppure Firefox e Chrome no. Sono consapevole che questa è una funzione di sicurezza e, naturalmente, sarebbe bello averlo, lo standard di questa funzionalità di sicurezza e gli altri dovrebbero essere uniformi.

In termini di browser, sono un po 'diversi perché hai diversi hardware, software e sistemi operativi.

Suppongo che sia molto più difficile fare un approccio di taglia unica per coprire tutti questi aspetti.

    
risposta data 25.07.2011 - 02:37
fonte
0

In generale, non è mai bello reinventare uno standard. Hai dato l'esempio dei browser, ma i browser non sono uno standard. Piuttosto, interpretano e implementano standard (HTTP, HTML, CSS, Javascript, (interfaccia a) sistema Windowing, il sistema operativo, la lingua in cui sono scritti, ecc, ecc, ecc.)

Se stai scrivendo un "nuovo standard", non staresti scrivendo un nuovo browser; invece dovresti scrivere un nuovo linguaggio di markup, runtime lato client (ad esempio il prossimo javascript, java, actionscript). Dovresti creare una dimostrazione di concetti e convincere gli altri a utilizzare gli stessi metodi perché sono chiaramente superiori a quelli già esistenti.

Dopo aver guadagnato anni, devi presentare un RFC o andare a un organismo di standard per ottenerlo ratificato, quindi è più facile per gli altri seguire il tuo "nuovo standard".

Quindi, quando è bene reinventare uno standard? Mai. È bello introdurre uno standard quando si dispone di qualcosa che è drammaticamente superiore a tutto ciò che è là fuori, soprattutto se soddisfa un bisogno non precedentemente soddisfatto.

    
risposta data 25.07.2011 - 05:55
fonte

Leggi altre domande sui tag