Programmer learning English Trilogy

Source: Internet
Author: User
Author: Yu Sheng Source :《 Program Member published on: Reading: 5876 full-screen reading of the original article link [favorites]

Text/Yu Sheng

I have been working in the IT industry for many years. I have translated many technical books and accumulated many ways to learn English. In this article, he is more open-minded and shares his three secrets.

In general, programmers are better at English, because in this industry, English materials are the most comprehensive, timely, and urgent. As a result, I have observed that even programmers who have just started out can access the English documents and find the required information in the face of unfamiliar problems. At the same time, I also found that programmers who often read English documents do not often read English. Below are some of my learning experiences for your reference.

Read-Only documentsCode

Reading document read-only code is a habit of many programmers. It is also one of the reasons why programmers have not improved their English level even though they have read a lot of English documents. I used to see how to read technical books in programmerArticle, Proposed the "first code and then text" method, that is, "first look at the code, do not understand and then look at the text ". This reading method can greatly improve reading efficiency, but if the technical books only read code, what should they do? Most of the time, the Code is just the tip of the iceberg. The thinking and logic behind the code are the real highlights. Only words can be interpreted, and only words can be understood.

For example, the code is "x = 5;". Sometimes it indicates that X should be not more than five, and sometimes it indicates that X should be no more than five. Can you tell the difference between the two statements without looking up the dictionary-the former is "X must be less than or equal to 5", and the latter is "X should be only 5", meaning different, the application method is different from the application method.

Over the years, programmers who often hope to translate technical documents have come to me to discuss translation issues and want to know how to express some sentences. At first, I thought it was a question of Chinese expression, but later I found that more problems are actually in English Reading, so my answer is often: what do you mean by the author? Guide the other party to gradually express the meaning of the original text. In fact, the real translation has come to the fore.

The most recent example is from this sentence: "But as with any web-based system, atom-based solutions trade scalability for latency, making atom often inappropriate for very low-latency configurations ". This sentence is difficult to translate. The problem seems to be that, except for the sentence trunk, there was an but ..., Then there is another making .... However, I finally found that programmers who have doubts about this sentence do not actually understand trade... For... (Translated as "atom-based solutions need to weigh latency and scalability"). If you understand that it is "sacrificing XX in exchange for XX", the entire sentence will be quite understandable, it is also very easy to translate: Like all web-based systems, atom-based solutions increase latency in pursuit of scalability, so atom is generally not applicable to prompts requiring extremely low latency.

To solve this problem, the first thing to do is to change the habit of "only reading code but not reading text", at least to "read the text and realize that it means the same as the code "; the second is to learn some new knowledge by reading the English documents of pure text (for example, a detailed explanation of the in-depth Principles). This method is very effective and recommended to many friends.

Note pronunciation

I used to hear people say that Chinese people have learned English for many years, but they are actually dumb English. I don't know how much the current situation has changed, but as far as I have seen, many programmers, although reading a lot of English materials, will join the English discussion group and dare to say, however, there are still many problems in reading audio. The "Pronunciation" mentioned here is not a positive accent, but the pronunciation of some terms.

As we all know, terms in computer science are widely used. For example, in a design pattern, there is a pattern called facade. Many people often directly read it as ['f then K else: d]. In fact, this word comes from French, the correct pronunciation is actually [F then's then: d]; then, for example, the pseudo-code "pseudo" pseudo-do. The correct pronunciation is ['su: d then u], but I rarely see programmers reading it right. Many people simply don't make this sound.

Some people may say that these questions are not important. If we say "wrong", we can do it by convention, but it is not that simple. Recently, I attended a technical gathering where a guest (Technical Expert) read the framework name chameleon into ['t been milj has n]. the correct pronunciation is [k comment 'milj Comment N]. Because there is no text, many people have heard of what he said for a long time, the audience who are not familiar with chameleon are not clear at the end. This is still the case for Chinese people. If they have the opportunity to participate in technical exchanges between China and foreign countries, reading errors will cause more problems.

To solve this problem, there is a very good way to study open classes at American universities. Many high-quality open classes have been released for computer systems in schools such as Yale and Stanford, learning some of these excellent courses not only lays a solid foundation, but also learns many terms that you encounter every day but do not read or make mistakes. For example, I learned that the char of the data type is [k character:], rather than [t character:].

Exercise expression in English

If you have memorized words, you may have heard the "passive words" and "active Words". The former refers to the words "recognized, the latter refers to the word "active application upon expression. I have observed that most of the English that many programmers have mastered belongs to "passive English". I can understand it, but it may not be said to express the same meaning.

It seems that there is no problem at ordinary times, but if you want to view the information, it will cause a big obstacle if you don't express it. Compared with ChineseTechnical materialsIn the world where "no responsibility/no responsibility for posting" is rampant, the quality of English technical materials is much higher, and the accuracy of Google search materials is much higher than that of Baidu; however, to be able to use English documents smoothly, you need to "actively" enter information and describe the problem. At this time, "passive English" becomes a major problem.

I have encountered such a situation many times: even if the answer is close at hand and the correct keyword is entered, the first result of Google is the answer, but the programmer is helpless-he does not know that the computer's "beep" sound is Beep, he does not know that the "multi-thread" information should use concurrency, and he does not know that the "crash" is system halt, "black screen" is blank screen ......

To solve this problem, the best way is to read the materials carefully and remember these statements. On the other hand, when it's okay, visit other websites such as stackoverflow, do not ignore problems because they have nothing to do with yourself. pay more attention to what these problems are and how they are expressed. In this way, when you encounter problems, you can quickly find possible solutions and save time.

Conclusion

Some people say that programmers who use Chinese as their native language are forced to learn English. They must not only read but also express their skills. This argument makes sense. However, if there is no better solution at present, learning to read, identify pronunciation, and exercise expressions can indeed benefit you. In the long run, to change this situation, all the personnel in the Chinese technology circle should make great efforts to contribute high-quality materials (both original and translation are acceptable). If there is only "no responsibility for posting", it will not be verified in person, the overall quality of Chinese technical materials will only deteriorate, forcing more people to learn English well.

Yu Sheng, a former senior researcher at Shanda Innovation Institute, is currently the technical director of an e-commerce and logistics company in Guangzhou. Focus on how technology solves practical problems. I have translated and reviewed several technical books in my spare time and wrote a book to explain regular expressions.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.