Ho sentito questo termine per la prima volta circa quindici anni fa.
La mia comprensione è simile a quella descritta nell'articolo di Wikipedia e in un articolo di TechRepublic : lavori con i tuoi colleghi in un "modo amichevole e collegiale in cui i sentimenti personali vengono messi da parte". Include cose come fare revisioni tra pari con rispetto reciproco e il desiderio di imparare, e non sentirsi come il "proprio" codice, quindi se qualcuno ha un suggerimento o dice che c'è un bug o ha bisogno di cambiarlo, non ci si difende esso.
Ho anche pensato che si trattasse in gran parte di avere un atteggiamento che crea buone relazioni con altri programmatori con l'obiettivo di migliorare il codice. Quindi non l'ho visto incompatibile con l'orgoglio per la qualità del tuo lavoro o il rimpianto se qualcosa che hai fatto ha causato un problema al tuo cliente.
Tuttavia, una risposta a una domanda recente mi fa pensare che alcuni altri programmatori abbiano una diversa comprensione della "programmazione senza ego". Quindi qual è la definizione corretta? E quali sono le sue implicazioni?