I wish every developers understand this.
Gilbert Wat

I suppose it is mainly because quite a number of developers can’t really think in terms of working as a team. They think the job as a developer is to only interact with a machine, but in reality your interaction with your co-workers matters a lot more. Most of the interactions among developers happen on the git blame level…even more so than your daily or weekly meetings. Sometimes I think one of the hiring criteria should be the ability to “write grammatically correct English”…which translates into descriptive test cases, intuitive variables names and simple workflows. Writing a program is almost like writing an essay.