Dovrebbe essere delicatamente scoraggiato
..non puoi sapere chi vedrà il codice sorgente nel corso della sua 'vita.
Mentre fa tutto parte del lavoro frustrarsi con un pezzo di codice particolarmente complesso o vecchio e vuoi parlarne, inserire nel codice sorgente espletivi / rant / arte ASCII / barzellette sbagliate / osservazioni offensive non è professionale cattiva idea nella mia esperienza. A volte, l'ingegnere che scrive i commenti è ignaro degli eventuali effetti che i suoi commenti potrebbero avere - ecco alcuni dei problemi che ho riscontrato:
- Un numero elevato di imprecazioni nel codice rilasciato al pubblico come codice open source / di esempio.
- Scherzi di cattivo gusto che causano offese profonde ad alcuni membri del team con conseguente tribunale industriale.
- Osservazioni da buttare via che erano in realtà razzisti / sessisti / di genere causano il licenziamento delle persone.
Mentre tutti abbiamo bisogno di avere alcuni sbocchi per la frustrazione / divertimento / japing, il codice sorgente non è il posto dove farlo, IMO. Non inseriresti imprecazioni / barzellette / commenti offensivi in un contratto, pagine di aiuto, progetti o altri documenti professionali, anche se tali documenti potrebbero essere letti anche meno spesso del codice sorgente.
Se i capisquadra si mettono a dura prova, ci saranno problemi, quindi dico "delicatamente scoraggiato" per mezzo di una parola tranquilla con ingegneri problematici e fornito meccanismi di sfiato adeguati per sfogarsi, che si tratti di Facebook, di messaggistica istantanea , air hockey o un sacco da boxe.
Non è una difesa affermare che i commenti sono stati compilati - che ne pensi di JavaScript o di qualsiasi altro codice dinamico sul lato client?
Ecco alcune delle esperienze del mondo reale che ho avuto che hanno plasmato la mia opinione:
Mentre lavoravo in Microsoft, ho notato che un ingegnere del software non conosceva l'ortografia corretta di "impossibile" - gli mancava la o, la - e aveva scritto gran parte del suo codice con lunghe spiegazioni di come non poteva far funzionare X perché Y stava causando il problema Z. Il suo codice era eccezionale; la sua ortografia non era così buona. Basti dire che ogni successivo revisore di questo codice (ad esempio me) è stato allarmato nel vedere un gran numero di imprecazioni casuali nel codice. Parte di questo codice è stata mostrata ai partner (autori dei driver). Immagina il loro orrore nel vedere le imprecazioni. Idealmente, gli sfoghi dovrebbero essere stati al project manager in forma verbale (nel qual caso la persona Y può essere coinvolta nella discussione) o forse impegnare messaggi, ma non nella fonte.
In una società, un individuo di lingua straniera si è unito a una squadra prevalentemente di lingua inglese. Ha scritto commenti nella sua lingua, pensando che nessun altro potesse leggerli. Questo andava bene, fino a quando Babelfish / Google Translate non hanno rilasciato un'opzione "in inglese" per la sua lingua, a quel punto il resto del team ha tradotto alcuni commenti e si è spaventato per i commenti sporchi e spesso sprezzanti che il ragazzo stava facendo sull'azienda , la sua squadra e una collega di sesso femminile. Imbarazzante .
In un'altra società, un ragazzo è stato davvero preso con l'arte ASCII e ha inserito ogni sorta di arte nel suo codice sorgente, non individuato (o forse benedetto) dai revisori del codice. Dopo un po 'si soffermò sui draghi, per qualche motivo, di solito con una specie di tag line. Più tardi, una persona gallese si unì alla squadra. L'emblema nazionale del Galles è un drago rosso, quindi il nuovo ragazzo era inizialmente allegro per le immagini, ma poi si è offeso quando alcune delle sciocche linee di tag potevano essere interpretate come offensive. Sì, è richiesta una mediazione da parte del team leader, ma ciò non avrebbe dovuto accadere.
Nomi / dettagli rimossi per proteggere l'innocente.