Sign up ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Can somebody tell me how is it possible, as a programmer, to improve my communication skills and perfect my English as it is not my mother tongue ?

What steps should I follow to improve on these two matters?

share|improve this question

closed as off topic by user281377, thorsten müller, Yannis, ChrisF Jan 25 '12 at 9:51

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

related:… – gnat Jan 25 '12 at 8:58

4 Answers 4

up vote 2 down vote accepted

To master any skill, you need to use it.

There's nothing like real-world exposure to really get into a language. The best way would be to spend some time in an English-speaking country (with nobody around to speak any other language). Unfortunately, most of can't afford this kind of luxury, so the next best thing is to grasp every opportunity you can. Participate in English-speaking online communities, watch movies, read books, find native speakers in your area. You may also want to switch the software you use (OS, browser, programming tools) to an English localisation, where that is possible.

The least you can do is read programming documentation and the like in English rather than your native language - the English-language resources are usually better (newer and more complete) anyway, since virtually all programming communities use English as their lingua franca.

share|improve this answer
+ 1 Or lingua franca :). wikipedia – Joseph Quinsey Jan 25 '12 at 9:55

I suggest learning English through programming.

Books are the obvious point to start: the next time you need to learn a new language, technique or technology, get a book written in English instead of other ways. All programming "worlds" have authors expressing themselves in interesting ways: Java has Josh Bloch, Lisp has Paul Graham... find your ecosystem's men of letters and make sure to read all they've written.

The Joel on Software and Coding Horror blogs on programming are worth checking out. Their respective authors are the founders of Stack Overflow.

Interacting with SO itself also leads to enriching your vocabulary, list of idioms, etc.

Other code-related resources I can think of are documentation, podcasts and convention videos/slideshows.

share|improve this answer
+1... BUT I'll say it only helps enriching your vocabulary and learning new idioms related to programming stuff. To really improve faster, I think you need real English lessons with real English teachers. Additionally, understanding is one thing... expressing yourself in a foreign language is something totally different (even more talking than writing, since you have "time" to think about what you are writing) – Jalayn Jan 25 '12 at 9:26
When i read programming books. their is very simple language they used to describe the jargon instead a novel have good way to learn. because reading some page of them i got too many words who i learn from dictionary. Are i am Right ! – user45875 Jan 25 '12 at 10:12

English and Communication are two independant issues.

I would focus on Communication in my mother tongue first, then English should not be an issue as long as you really want to communicate and be understood.

How to learn communication depends a lot on what is available in your country in terms of schools, grants, libraries, internet...

share|improve this answer

There are several good ways to improve any language :

  • use that language as much as possible
  • enrol on a language course

Some not so good ways, but also helps a bit if you use a dictionary :

  • listen to a radio stations on that language
  • watch a move (if possible with subtitles)
share|improve this answer