Tutte le risposte (e i commenti) finora sembrano concentrarsi interamente sulla prima metà della frase, trasformandola in un commento su "gonfio", quando la metà importante è la seconda metà: quei programmi che non possono espandersi così sono sostituiti da quelli quale può.
Non si tratta di gonfiare il software, si tratta delle realtà del mercato. Le persone possono dire che vogliono un prodotto semplice, ma quando si guarda all'utilizzo effettivo, le cose che vengono utilizzate sono le cose che consentono agli utenti di fare di più e finiscono per sostituire strumenti meno capaci.
Parte del problema è che "semplice" è una parola confusa. Come "cleave", può significare due cose quasi completamente opposte. Ciò che la gente desidera è qualcosa che semplifichi compiti complessi. Questo è "il semplice semplice" e richiede molta complessità per fare bene. Ciò che alcune persone interpretano come, però, è che le persone vogliono qualcosa di semplicistico o minimalista. Questo concetto può avere un certo fascino di nicchia, ma nel complesso è il tipo sbagliato di "semplice" su cui concentrarsi quando si progetta un prodotto. Non importa quanto sia buono il tuo lavoro, le nuove richieste di funzionalità continuano ad arrivare.
Per fare un esempio, c'è il programma su cui lavoro al lavoro. Probabilmente non ne hai mai sentito parlare, ma siamo il leader di mercato in un settore specializzato: il controllo dei media. Molto probabilmente il nostro programma gestisce la tua TV e / o stazione radio preferita. I clienti lo amano, dicono che è così molto meglio di qualsiasi altra cosa che hanno lavorato con.
È anche enorme . EXE ha dimensioni superiori a 65 MB, con circa 4 milioni di righe di codice, supportate da un database con oltre 150 tabelle, costruito nel corso di oltre un decennio di lavoro. Eppure sembra che ogni volta che proviamo a installarlo in una nuova stazione o rete, ci siano una o due cose che sono assolutamente essenziali per il loro flusso di lavoro, per cui non abbiamo alcun supporto. Quindi finiamo per aggiungere le nuove funzionalità perché altrimenti i clienti non vorrebbero passare dal sistema a cui sono già abituati. E lasciami ripetere, i clienti lo adorano.