feature: n.

1. [diffuso] Una buona caratteristica o comportamento (di un programma). Se era intenzionale o no non ci riguarda.

2. [diffuso] Una caratteristica o comportamento intenzionali (detto di un programma). Se sia buona o meno non conta (ma se non e' buona, e' detta anche misfeature).

3. Una caratteristica o comportamento sorprendente; in particolare, una che e' senza senso per lo scopo voluto perche' funziona ancora meglio così — un'incosistenza del genere è quindi una feature e non un bug. Questo tipo di funzione e' a volte detta un miswart; vedi quella voce per un esempio classico.

4. Una caratteristica o comportamente che e' uscito da solo o non e' necessario, ma comunque e' anche impressionante o simpatico. Ad esempio, una feature della funzione format di Common Lisp e' la capacita' di stampare numeri in due diversi formati di numerazione romana (vedi bells whistles and gongs).

5. Una caratteristica o comportamento che e' stata messa per aiutare qualcun altro ma che riesce ad essere utile anche a te.

6. [comune] Un bug che e' stato documentato. Chiamare qualcosa una feature a volte significa che l'autore del programma non ha considerato quel caso particolare, e che il programma ha risposto in un modo che non era aspettato ma non strettamente scorretto. Uno scherzo classico e' che un bug puo' essere trasformato in una feature semplicemente documentandolo (quindi in teoria nessuno puo' lamentarsene perche' e' nel manuale), o persino semplicemente dicendo che è buono. “Quello non è un bug, è una feature!” è una frase trabocchetto comune. Vedi anche feetch feetch, creeping featurism, wart, green lightning.

La relazionefra bug, feature, misfeature, wart e miswart puo' essere chiarita dal seguente dialogo ipotetico fra due hacker su un aereo di linea:

A: “Questo sedile non va indietro.

B: “Non è un bug, è una feature. C'e' una porta di emergenza proprio attorno alla finestra dietro di te, e la strada dev'essere mantenuta sgombra.

A: “Oh. Quindi e' una misfeature; avrebbero dovuto aumentare lo spazio fra le varie file qui.

B: “Si. Ma se avessero aumentato lo spazio solo in una sezione si sarebbe trattato di un wart— avrebbero dovuto fare dei pannelli di lunghezza inusuale per il tutto per coprire i sedili spostati.

A: “Un miswart, in realta'. Se aumentassero lo spazio per diverse file perderebbero diverse file tagliando i margini di profitto. Quindi lo spazio non uguale sarebbe in realta' la cosa giusta da fare.

B: “Infatti.

Una feature non documentata e' un eufemismo comune, probabilmente umoristico per un bug. C'e' uno scherzo su questo che a volte viene chiamato “test geek a domanda singola”. Dici a qualcuno “Oggi ho visto una Volkswagen Beetle con una targa con scritto FEATURE”. Se lui/lei ride, allora è un geek.