A few days ago, Xiao Hui answered a question from a backstage reader:
I am not good at math, am I suitable to be a programmer?
Then, another friend asked a related question: "I'm not good at English, am I suitable to be a programmer?"
This is also a good question. Xiao Hui will talk about his thoughts today. Similar to the previous question, we also need specific analysis of specific problems.
If you want to work as a programmer in a foreign company, you must have a certain level of spoken and written English.
why? Because you often need to communicate face-to-face or remotely with foreign colleagues, and often read and write English emails.
Xiao Hui himself has worked in two foreign companies. The entire department of the first foreign company is all Chinese. Although we usually communicate in Chinese, we often communicate with colleagues in the US headquarters by emails in English. There will be at least one conference call in English.
The second foreign company that Xiaohui worked for, the project leader is a French who can hardly speak Chinese, so our daily work communication is almost entirely in English.
Therefore, if you work in a foreign company, English ability is standard.
If you just want to work as a programmer in a domestic Internet company, your English ability will not affect you much **. **
I don't need to say more about the reason. I work in a domestic company, and I hardly use English for any communication, so English ability is really not very important.
Some people may ask, there are so many English words in the code written by programmers, how can it be said that it has little impact?
In fact, the English vocabulary involved in programming is very limited, and the most core words are no more than 100, and they will be memorized after using them a few times.
I just have a summary of English words commonly used by programmers here, I hope it will be helpful to fellow programmers who are not very good in English:
abstract
access
alert warning
algorithm
allocate allocate, configure
application, application
array array
attribute feature, attribute
backup
binary binary
bit bit
bug program vulnerability
byte byte
cache cache
call call
character character
class class
client client, client
collection
commit commit
connection connection
copy copy
data data
debug debug
default default
document document
entity entity
equal 相等
event 事件
exception 异常
export 导出
field 字段
file 文件
function 功能,函数
generate 生成
global 全局的
group 组、群
heap 堆
host 宿主
implement 实现
import 导入
instance 实例
interface 接口
library 库
link 连接、链接
list 列表
load 装载、加载
log 日志
login 登录
memory 内存
message 消息
method 方法
native 原生的、本地的
object 对象
operation 操作
option 选项
overload 重载
override 重写
package 包
port 端口
print 打印
programmer 程序员
project 项目、工程
queue 队列
range 范围、区间
record 记录
remote 远程
return 返回
save 保存
stack 栈、堆栈
stream 流
string 字符串
system 系统
target 标的,目标
task 任务
template 模板
text 文本
thread 线程
transaction 事务
trigger 触发器
type 类型
unique 唯一
user 用户
value 价值
variable 变量
这份单词总结,小灰尽量追求少而精,大家觉得有哪些重要单词需要补充,也欢迎留言提出。
最后,无论你是在外企还是在国内企业,你需要都记住一点:对程序员来说,英语能力永远没有技术重要。