2009-06-28 13 views
7

Mi chiedo se la produttività possa essere correlata al fatto che un programmatore sia o meno un madrelingua inglese. Lavoro in Giappone e posso dirti che i programmatori giapponesi hanno difficoltà a ottenere la parte inglese di una lingua (parole chiave riservate, nomi di funzioni, tutorial ecc.), Non è naturale per loro e il loro processo di pensiero è rallentato da una mappatura del linguaggio . Puoi condividere la tua esperienza con i programmatori di madrelingua inglesi non nativi, è facile superare questa barriera o i madrelingua inglesi avranno sempre un piccolo vantaggio?Problemi culturali nei linguaggi di programmazione

+1

Questo potrebbe essere un argomento interessante ma è una discussione non una domanda. – cletus

risposta

13

Non sono un madrelingua inglese, eppure sono stato abbastanza produttivo come programmatore in molti paesi (compresi gli Stati Uniti, dove vivo e lavoro ora) ... ma è perché ho sempre messo un po 'di sforzo per essere bravo in inglese come lo consentirà la mia condizione di non madrelingua. Credo che una forte competenza in inglese aiuti le prestazioni nella programmazione (e molti altri tipi di ingegneria - ho iniziato a progettare chip e sistemi HW - e più in generale "lavoro di conoscenza") in molti, molti modi.

Come un'autorità riconosciuta in Python, e piuttosto forte in C++ e in altri linguaggi di programmazione, mi viene spesso chiesto "quale lingua dovrei studiare per migliorare la mia carriera" ... e la mia risposta è stata a lungo "inglese" !!!

Dando questa risposta anche ai madrelingua: la quantità di errori di ortografia incuranti (o dislessici, difficili da dire), errori di sintassi e malopropismi di ogni tipo, che ho visto perpetrato da madrelingua di inglese, non è molto inferiore al numero che ho osservato dai miei colleghi non madrelingua. Ognuno di questi errori danneggia l'efficacia e la precisione della comunicazione ... e il lavoro di conoscenza (compresa la programmazione) è circa la comunicazione prima di tutto!

+1

Direi che oggigiorno la maggior parte della gente scrive pessima nella propria lingua madre, proprio da quello che vedo nei forum e in TV. Quindi quei pessimi madrelingua inglesi sono ancora in un posto relativamente vantaggioso. Se non erano nativi, dovevano imparare la propria e una nuova lingua oltre a qualsiasi linguaggio di programmazione che vorrebbero imparare. –

+0

@Vinko, hai un punto, ma sostengo che anche per i madrelingua che migliorano la loro padronanza della lingua migliorano le prospettive di carriera (scrivi curriculum migliori, proposte, relazioni, documenti, ... - fai una buona impressione quando ti presenti clienti, clienti, top management ecc. ecc.). –

2

Sono un madrelingua tedesco e non ho riscontrato alcun problema con le parole chiave o le convenzioni di denominazione nelle API che avrebbero avuto un effetto sulla mia produttività, ma devo ammettere che avevo una conoscenza di base dell'inglese di il tempo in cui ho preso il mio primo linguaggio di programmazione.

Attualmente lavoro a Taiwan con un team misto di taiwanesi (cinese), svedese, spagnolo e diversi madrelingua inglesi (Stati Uniti, Sud Africa) con l'inglese come denominatore comune per riunioni, documentazione del codice, specifiche ecc. E Non ho osservato che la lingua madre di un programmatore ha avuto un impatto significativo sulle capacità di codifica.

Nello scenario che sto descrivendo, tutti gli interessati hanno padroneggiato almeno un livello base dell'inglese. È possibile notare la differenza di competenza a causa dell'errore di ortografia occasionale nei nomi di funzioni o nei commenti, ma in base alla mia esperienza, non è possibile collegarlo direttamente alla qualità del codice.

Inoltre, dato che la maggior parte della documentazione e delle esercitazioni sono disponibili solo in inglese (o almeno prima, prima delle prime traduzioni) per la maggior parte dei nuovi progetti, presumo che la maggior parte dei programmatori di tutto il mondo avrebbe raccolto un discreto livello di inglese passivo per la lettura - non necessariamente per comunicare attivamente in esso - e questo è tutto ciò che indovinerei per affrontare problemi intrinseci del linguaggio come parole chiave e nomi di funzioni, anche se non considererei le parole chiave della lingua un problema. La parola chiave for non si riferisce in realtà a "per" nella lingua inglese, se si osserva il costrutto sintattico nel suo insieme, vero?

Un altro problema è la comunicazione in generale. Se il tuo team non ha un linguaggio comune in cui tutti possono comunicare in modo efficiente, ciò ha un enorme impatto sulla produttività. Ma quel linguaggio è completamente estraneo al linguaggio di programmazione usato dal team e non deve essere affatto inglese - in base alla mia esperienza tutti i termini tecnici saranno comunque in inglese, ma la discussione è in tedesco o cinese.

0

Come programmatore di madrelingua inglese non nativo, posso dire di non aver avuto alcun problema, principalmente perché ho imparato l'inglese mentre imparavo a programmare e ora (credo) sono esperto in entrambi.

Tuttavia, penso di poter fare riferimento al fatto che più la lingua è diversa dall'inglese, più difficile sarà ingannare le parti inglesi delle lingue. Il giapponese è un ottimo esempio di una lingua molto diversa, ma anche allora, imparare l'inglese deve essere pensato come qualcosa che devi fare per diventare un buon programmatore.

Essere in grado di esprimere in modo conciso le tue idee in una lingua diversa è ciò che riguarda la programmazione, quindi imparare l'inglese è un modo di praticare (e potrebbe anche essere un vantaggio per i non madrelingua, dato che devono prima imparare l'inglese) . Ma ovviamente, non tutte le persone hanno le stesse capacità riguardo alle lingue.

+0

Sono completamente d'accordo con te, ho un interesse per le lingue e ho letto in diverse fonti che il giapponese è la lingua più difficile per gli anglofoni a causa delle grandi differenze, l'inverso potrebbe essere vero? –

0

Come madrelingua inglese non nativo, posso affermare che sì, i madrelingua inglesi hanno un chiaro vantaggio rispetto a quelli non nativi. Trovo che il paradigma della lingua inglese sia troppo radicato in alcuni linguaggi di programmazione. Leggere la documentazione è più lento in quanto la traduzione di termini tecnici è più difficile. Penso che l'inglese sia un'abilità indispensabile per un programmatore.

1

Sono messicano non un madrelingua inglese per quanto posso dire che il processo di pensiero dovrebbe essere esattamente lo stesso e una volta che ci si abitua alla lingua (come sviluppatore lo affronterai per tutta la vita) dovresti essere in grado di fare le stesse cose, credo fermamente che il linguaggio di programmazione diventi parte del tuo linguaggio naturale. Inoltre, lavoro con alcune società negli Stati Uniti e penso che siano sostanzialmente soddisfatte del mio lavoro, credo che tutti i programmatori debbano imparare l'inglese, ma non penso che il processo di pensiero debba essere influenzato. Ci vorrà un po 'di sforzo per i programmatori, ma penso che se saranno abbastanza bravi saranno in grado di superare la barriera linguistica.

1

Non devi essere un vero madrelingua inglese per essere super produttivo, ma avere un alto comando nel linguaggio sarebbe di grande aiuto soprattutto quando andrai oltre "ciao mondo" e inizierai a usare le librerie con parole grosse come la concorrenza.

Ho parlato nativamente in giapponese, e ora parlo per lo più ok Engrish negli Stati Uniti, ma non mi considero affatto un programmatore sub-produttivo. Una parte del problema in Giappone è il sospetto che la distanza linguistica dall'inglese sia così lontana, finiscono per inventare grandi parole di caratteri cinesi difficili da capire o direttamente importate nella fonetica del katakana, che probabilmente non ha senso per loro.

Quando ti trovi nella zona, probabilmente penserei al linguaggio di programmazione stesso, quindi probabilmente non importa quale linguaggio naturale parli a casa. Ci sono troppi hacker che non sono madrelingua inglese come Linus, Guido e Matz per nominarne alcuni.

0

Non penso che la divisione sia tra parlanti nativi e non madrelingua inglesi. Da una prospettiva giapponese o cinese, la gente in Olanda o nel resto d'Europa è di madrelingua inglese. Questo perché la lingua e la cultura inglese sono vicine alla lingua e alla cultura locale.

I, come madrelingua inglese non ha mai avuto problemi, e questo è anche il caso per i miei co-sviluppatori in Olanda e Israele dove ho lavorato.

La divisione è più tra "ovest" e "est". Ho imparato (o cercato di) il cinese mandarino e, quando lo fai, apprezzi quanto sia diversa la struttura linguistica e il processo di pensiero delle lingue europee. Posso immaginare di essere un madrelingua giapponese o cinese che lotti con la preferenza di programmare verso l'inglese.

1

Sono un madrelingua inglese, ma ho studiato lingue, sia umane che digitali, per gran parte della mia vita.

Direi che l'ulteriore lingua è l'inglese nel suo sistema di scrittura, struttura e vocabolario, più difficile sarà il tempo che avrà. Il giapponese è una lingua profondamente diversa dall'inglese, mentre il tedesco (ad esempio) è molto più vicino. Mi aspetterei che un madrelingua di quasi tutte le lingue europee abbia un tempo molto più facile di quello non europeo, a parità di tutti gli altri.

0

C'è un enorme divario tra le persone che possibile programmare e le persone che non possono , che rispetto ad essa la distanza tra le persone che possono capire 90% di parole inglesi comuni e quelli che capiscono 100% non è davvero così apprezzabile.

Lo stesso si applica a diversi livelli: le persone che sanno scrivere commenti ma non sanno veramente l'inglese scriverebbero comunque commenti migliori di quelli delle major liberali che passarono alla programmazione.

Problemi correlati