我很了解这位同学的才干,在任何一流公司任职,必定是捉襟见肘了。他的姓名我当然保密,但是他所任职的公司由于过分放肆,我不得不直接指出来——这 即是被许多人神往得像地狱相同的当地,Google。这位同学所描绘的遭受,跟我几年前在Google的实习阅历千篇一律。我依然记住,Google的队 友在旁边看着我用Emacs,用小学教师似的口气对我说:“按Ctrl-k!” 我依然记住,在提交队友彻底无法写出来的高难度代码时,被责怪和讪笑不会用Perforce。我依然记住,吃饭时搭档们对所谓“Google牛人”眉飞色 舞的艳羡。我依然记住,终究我一自个做出悉数团队做梦都做不出来的项目的时分,有人宣布烦闷的吼怒:“快——写——测——试!” ……
我的这位同学也算得上本范畴顶尖的专家了。如此的蹂躏一个专家的价值,用浅薄的规范来评判和对待他们,Google并不是仅有一个这么的公司。我之 前任职的好几个公司,或多或少都存在相似的疑问。许多时分也纷歧定是公司办理层无端施加压力,而是程序员之间互斗的凶猛,相互评判,损伤自负。从近来Linus Torvalds在讲演现场公开对观众无理,你能够看出这种只关怀技能,不尊敬人的思潮,在程序员的社区里是十分遍及的。
后来我发现,并不是程序员成心想要轻视对方或许相互攻击,而是他们真的不了解啥叫做“尊敬”,他们不知道怎样说话才干够不损伤另一个程序员,所以 有时不当心就让人怒火中烧。所以说,尊敬他人正本是一个“技能疑问”,而不是有心就能够做到的。由于这个缘由,我想在下文里从心思和技能视点动身,指出 IT业界不尊敬人表象的来源,一同提出几点主张,通知咱们怎样真实的尊敬一个程序员。我希望这些主张对公司的办理层有学习含义,也希望它们能给与正在饱尝 相同苦楚的程序员们一些精神上的鼓舞。
我觉得为了建造一个程序员之间相互尊敬的公司文明,应当留意以下几个关键。
知道和供认计算机体系里的前史留传糟粕
许多不尊敬人表象的来源,都是由于某些人偏执的信任某种技能即是国际上最佳的,每自个都有必要知道,不然他就不是一个合格的程序员。这种表象在 Unix(Linux)的国际尤为遍及。Unix体系的鼓吹者们(我从前是其中之一)喜爱处处布道,通知你其它体系的规划有多蠢,你应当遵照Unix的 “哲学”。他们如同认为Unix即是国际终极的操作体系,但是现实却是,Unix是一个规划十分差劲的体系。它如同成心被规划为难学难用,简略犯错,却美 其名曰“强壮”,“灵敏”。视野开阔一点的程序员都知道,Unix的规划者正本底子不了解规划,他们并不是国际上最佳的程序员,却有一点做得很成功,那即是 他们很会制作宗教,鼓动咱们的顺从心思。Unix规划者把自个的规划失误推在用户身上,让用户觉得学不会或许搞错了都是自个的错。
假如你对计算机科学了解到必定程度,就会发现咱们正本依然日子在计算机的石器时代。格外是软件体系,建立在成堆前史留传的差劲规划之上。各种差劲脑 残的操作体系(比如Unix,Linux),程序言语(比如C++,JavaScript,PHP,Go),数据库,编辑器,版别操控东西,…… 常常困惑着咱们,这即是为啥你需求那么多的所谓“经历”和“常识”。但是,许多IT公司不喜爱供认这一点,他们一贯以来的个性是“一切都是程序员的 错!”,“作为程序员,你应当知道这些!” 这就形成了一种“皇帝的新装表象”——咱们都不喜爱用一些规划恶劣的东西,却都怕他人讪笑或许置疑自个的才干,所以老是喜爱显现自个“会用”,“能学”, 而没有人敢说它难用,敢指出规划者的失误。
我这自个呢,即是这种“黑客文明” 的一个反例。我所遭到的多样化教学,让我从这些过火顺从,教条主义的心思里边跳了出来。每逢有人由于不会某种东西或许言语来讨教我时,我老是很轻松的戏弄 这东西的规划者,然后通知他,你没理由知道这些破玩意儿,但正本它即是这么回事。然后我言必有中的通知他这东西怎样回事,怎样用,是哪些规划缺点致使了我 们如今的古怪用法…… 我觉得一切的IT从业人员关于这些东西,都应当是这么的戏弄心情。只要这么,软件工作才会得到本质性的前进,而不是被一些自虐的规划所困惑,形成思维枷 锁。
总归,这是一个十分首要的“心情疑问”。虽然在现阶段,咱们有必要知道怎样绕过一些差劲的东西,运用它们来完结自个的使命。但是在此一同,咱们有必要 重视和供认这些东西的恶劣本质,而不能拿它们当教条,把啥事都见怪于程序员。只要辨明东西规划者的失误和程序员自个的失误,不把东西的规划失误见怪于程 序员,咱们才干有用地尊敬程序员们的智商,鼓舞他们做出简略,高雅,完善的商品。
辨明精华常识和外表常识,不要太拿经历当回事
在任何范畴,都只要少量常识是精华的,别的大多数都是外表的,浅薄的,是从精华常识衍生出来的。精华常识和外表常识都是有用的,但是它们的重量和重 要性却是不相同的。所以有必要区别精华常识和外表常识,不能相提并论,对待它们的心情应当是不相同的。由于外表常识底子是死的,并且很简略从精华常识推导衍 生出来。咱们不应当由于自个知道许多外表常识,就自认为比把握了精华常识的人还要强。不应当由于他人不知道某些外表常识,就认为自个略胜一筹。
IT公司常常有这么的人,认为通晓一些看似杂乱的指令行,或许某些难用的程序言语就很了不得似的。他们假如传闻你不知道某个指令的用法,那几乎就像 法国人不知道拿破仑,美国人不知道华盛顿相同。这些人没有发现,自个身边有些搭档正本把握着精华的常识,他们彻底有才干从自个已有的常识,衍生制作出一切 这些东西,而不仅仅运用它们,乃至规划得愈加完善和便利易用。这种能够规划制作出十分好东西的人,通常身负愈加首要的使命,所以他们通常会在被现有东西的用 法利诱的时分,十分谦善的请搭档协助处理,斗胆的供认自个的模糊。
假如你是这个通晓东西用法的人,切不能够把搭档的谦善恳求当成能够显摆自个“资格”的时分。这搭档通常真的是在“虚怀若谷”。他并不是搞不了解,而是 底子不屑于,也没有时刻去思考这种初级疑问。他的利诱,通常来源于东西规划者的失误。他很了解这一点,他也知道自个的技能水平正本是高于这东西的规划者 的。但是为了礼貌,他常常不直接批判这东西的规划,而是谦善的责怪自个。所以搭档向你“谦善讨教”,彻底是为了制作一种友爱和谐的氛围,这么能够节省下时 间来干真实首要的作业。这种谦善并不等于他在崇拜你,供认自个的技能才干不如你。
所以准确的对待办法应当是诚实的标明对这种利诱的了解,并且坦率的供认东西规划上的不合理,差劲的当地。假如你能够以这种谦和的心情,而不是自认为专 家的心情,搭档会快乐地从你这儿“学到”他需求的,浅薄的死常识,并且记住它,防止下次再为这种无聊事来打扰你。假如你做出一副“全国只要我知道这奇技淫 巧”的心情,搭档通常会对你,连同这东西一同发作轻视的心情。他下次会照样记不住这东西的用法,但是他却再也不会来找你帮助,而是一拖再拖。
不要自认为聪明,不要评判他人的智商和才干
在IT公司里,老是有许多人觉得自个聪明,想显现自个比他人聪明。这种人如同随时都在评判(judge)他人,你说的任何话,不论仔细的仍是恶作剧的,都会被他们拿去作为评价你智商和才干的根据。
有时分你写了一些代码,自个知道时刻不行,但是其时有更首要的作业要做,所以计划今后再改善。假如你提交代码时被这种人看到了,他们就会坚定地认为 你一辈子只能写出那样的代码。这即是所谓“wishful thinking”,人只能看到他希望看到的东西。这种人随时都在希望自个比他人聪明,所以他们随时都在监听他人显得不如他聪明的时分,而对他人比他高超 的时分视若无睹。他们只能看到他人忽略的时分,由于那是能够证实他们略胜一筹的有利依据。
当然,谁会喜爱这么的人呢,但是他们在IT公司里适当的遍及。你不敢跟他们说话,格外是不敢恶作剧,由于他们会把你稀里模糊的玩笑话悉数作为你智商 低下或许经历不足的依据。你不敢问他们疑问,由于他们会认为你问疑问,阐明你不了解!我发现具有这种心思的人,通常潜意识里都存在着自卑。他们有某些方面 (包含智力在内)不如他人,所以老是找时机显得略胜一筹。我还没有想出能够纠正这种心思疑问的有用办法,但如我上节所说,意识到悉数工作,包含你敬慕的鼻 祖们,正本都不了解许多东西,都是混饭吃的,是一个有用的放松这种心思的手法。
有时分我喜爱自嘲,对人说:“咱们这工作的先人做了这么多BUG来让咱们修补。如今你做了一坨屎,我也做了一坨屎,我的屎形似比你的屎香一点。”这 样一来,不光显现出心思的对等和尊敬,并且防止了由于谦善而让对方发作略胜一筹的心情。说真的,做这行底子不需求很高的智力,所以最佳是彻底抛弃对人智力 的判别。你不比任何人更聪明,也不比他们笨。
解说高档目的,不要运用初级指令
随时都要记住,搭档和部属是跟你智力适当的人。他们是通情达理的人,但是却不会简略地恪守你的初级指令。像我在Google的队友的做法,即是一个 极好的反面教材。正本这位Googler仅仅想通知我:“删掉这行文本,然后改成这么……” 即是如此一个简略的作业,但是她却虚张声势,不直接通知我这个“高档目的”,而是运用十分初级的指令:“按Ctrl-k!……” 口气像是在对一个不了解事的小学生说话,如同自个懂许多,他人啥都不知道似的。
有哪个Emacs用户不知道Ctrl-k是删掉一行字呢,何况你如今面临的正本是一个资深Emacs用户。我想咱们都看出来这儿的疑问了吧。这么的 初级指令不光逻辑不了解,并且是对另一自个的智力的严峻凌辱。你当我是啥啊?山公?假如这位Googler标明自个的高档目的,就会很简略在心思上和逻 辑上让人承受,比如她能够说:“配置文件的这行应当删掉,改成……”
在项目办理的时分也需求留意。在让人做某一件事之前,应当先解说为啥要做这件事,以及它的首要性。这么才干让人了解,才干尊敬程序员的智商。
不要希望新人向自个学习
许多IT公司喜爱把新人开始专家,希望他们“重新的起跑线动身”,向自个“学习”。比如,Google把新职工叫做“Noogler” (Newbie Googler的意思),乃至给他们发一种格外的螺旋桨帽子,其涵义在于通知他们,小屁孩要谦善,要向巨大的Google学习,将来才干够青云直上。
这正本是十分过错的作法,由于它彻底不尊敬新职工早已具有的布景常识,把自个的方位强加于他们头上。并不是你说“新的起跑线”就真的能够把人的曩昔 都抹杀了的。新人不了解你们的代码构造和工程办法,并不等于你们的办法就会领先一些。Google里边真的有许多值得学习的东西吗?校园的教学真的一文不 值吗?正本恰恰相反。我能够安然的说,我从自个的教授身上学会了最精华的常识,而从Google得到的,仅仅一些很浅薄的,死记硬背就能够把握的技能,而 且其中有挺多正本是糟粕。我在Google做出的一切立异作用,全都是从校园取得的精华常识的衍生物。许多PhD学生轻视Google,即是由于 Google不光自个技能平凡,反倒喜爱把自个包装成最领先的,逾越其它公司和校园的,并且放肆的希望他人向他们“学习”。
一个真实尊敬人才的公司会去了解,尊敬和体现新人从外界带来的格外技能,发挥他们特有的利益,而不是一味希望他们向自个“学习”。只要这么,咱们才 能坚持这些锐利武器的锋芒,在剧烈的竞赛中让自个立于不败之地。假如你一味的让新人“学习”,而无视他们特有的利益,终究就难免沦为平凡。
不要以教师自居,辨明“学习”和“了解”
如上文所说,IT工作的许多所谓“常识”,只不过是一些奇技淫巧,用以绕过前人规划上的失误。所以遇到他人不知道一些东西的时分,请不要认为你“教 会”了他人啥东西,不要认为自个能够当教师了。以教师自居,运用一些像“跟我学”一类的言语,正本是一种高高在上,不尊敬人的行动。
咱们很喜爱在取得了信息的时分用“学习”这个词,但是我觉得这个词被滥用了。咱们应当辨明两种状况:“学习”和“了解”。前者指你经过他人的点拨和 自个的了解,取得了精华的,不能容易制作出来的常识。后者仅仅指你“了解”了正本不知道的一些作业。举个比如,假如有人把一件物品放在了某个你不知道的地 方,你找不到,问他,然后他通知你了。这种信息的获取,显着不叫“学习”,这种信息也不叫做“常识”。
但是,IT工作许多时分所谓的“学习”,即是相似这种状况。比如,有人写了一些代码,规划了一些结构模块。有人不知道怎样用,然后有人通知他了。很 多人把这种状况称为“学习”,这正本是对人的不尊敬。这跟有人通知你他把东西放在哪里了,是相同性质的。这么的代码和规划,我也能够做,乃至做得十分好,凭 啥你说我在向你学习呢?我仅仅了解了一下罢了。
所谓学习,有必要是愈加高档的常识和技能,有必要有一种“有收成”,“有进步”的感受。简略的信息获取不能叫做“学习”,只能叫做“了解”。辨明“了解”和“学习”,不以教师自居,是尊敬人的一个首要体现。
清晰自个的请求,不要运用责怪的口气
有些人很古怪,他底子没通知过你他想要啥,有啥格外的请求,可他潜意识里假定现已通知你了。到了后来,他发现你的作法不符合请求,所以严峻责怪 你没有依照他“心目中的请求”就事。这种表象不止限于程序员,并且包含平时日子中的一般人。举个比如,我妈即是这种人的典型,所以我从前在家日子常常很辛 苦。她心目中有一套“准确”的干事办法,假如你没猜出来就会挨骂。你为了防止挨骂,爽性啥事都不要做,然后她又会说你懒,所以你就摆布不是人 :)
IT公司里边也有挺多这么的人,他们假定有些信息他现已通知你了,而正本底子没通知你。到了后来,他们开端责怪你没有依照请求干事。有些极端奇葩的 公司,里边的程序员不光喜爱以教师自居,并且他们“教授”你“常识”的首要办法是责怪。他们事前不通知你任何规则,然后只在你违背的时分来责怪你。我从前 在这么一个公司待过,姓名就不提了。
如今举一个详细的场景比如:
A: 你push到master了?
B: 是啊?怎样了?
A: 禁绝push到master!只能用pull request!
B: 但是你们之前没通知过我啊……
A: 如今你知道了?!
留意到了吗?这不是一个技能疑问,而是一个礼节(etiquette)疑问。你没有事前通知他人一些规则,就不应用见怪的口气来对人说话,何况你的 规则还纷歧定老是对的。所以我如今提示各位IT公司,在技能上的某些格外请求有必要事前提出来,保证程序员知道并且了解。假如没有事前提出,就不要怪他人没 按请求做,由于这是十分损伤人自负的作法。正本,在任何时分都不应当运用责怪的口气,它不光对处理疑问没有任何正面作用,并且会恶化人际关系,终究致使更 加严峻的成果。
程序员的作业量不行用时刻衡量
许多IT公司办理层不了解得怎样预算程序员的作业量,所以用他们坐在自个方位上作业的时刻来预算。假如你才干很强,在很短的时刻内把最艰难的疑问处理 了,接下来他们不会让你闲着,而会让你做别的一些很初级的活。这是很不合理的作法。打个比如,才干强的职工就像一辆F1赛车,马力和速度是别的人的几十 倍。当然,一般人需求很长时刻才干处理,乃至底子无法处理的疑问,到他手里很快就化解掉了。这就像一辆F1赛车,眨眼时刻就跑完了他人需求好久的旅程。如 果你用时刻来衡量作业量,那么这辆赛车跑彻底程只需求很短时刻,所以你算出来的作业量就比一般车子小许多。你能因而说赛车作业不行尽力,要他快马再加鞭 吗?这显着是不对的。
物理规律是这么:能量 = 功率 x 时刻。作业量也应当是相同的计算办法。英明的,真实了解程序员的公司,就不会盼望高水平的程序员不停地作业。高水平程序员由于常常能够另辟蹊径,一个就可 以抵好几个乃至几十个一般程序员。他们处理的疑问比常人的艰难许多,费脑力多许多,当然他们需求十分好的歇息,养护,娱乐,…… 假如你让高水平的程序员太忙了,一刻都不停着,风趣有挑战性的作业做完了就让他们做一些初级无聊的作业,他们悟出这个道理今后,就会成心怠慢速度,有时分 分明很快做完了也会说没做完。与其这么,不如只希望他们作业短一点的时刻,把作业做完就能够。
当然这并不是说初级的程序员就应当过量作业。编程是一项艰苦的脑力活动,超时过量的作业再加上压力,只会带来功率的低下,质量的下降。
不要让别的人修补自个的BUG
这个我现已在一篇专门的文章里讨论过。让一个程序员修补别的一个程序员的BUG,不光是功率低下,并且是不尊敬程序员自个价值的作法,应当尽量防止。
在软件工作,常常看到有的公司办理让一自个修补另一自个代码里的BUG。有时分有人写了一段代码,扔出来不论了,然后公司办理让别的工程师来修正它。我想通知你们,这种办法会很失利。
首要,让一自个修正另一自个的BUG,是不尊敬工程师自个技能的体现。一朝一夕会下降工程师的作业积极性,以至于失掉有价值的职工。代码是人用心写 出来的著作,就像艺术家的著作相同,它的质量牵挂着一自个的品格和庄严。假如一自个A写了代码,自个都不想修正里边的BUG,那阐明A自个都认为他自个的 代码是废物,病入膏肓。假如让另一自个B来修正A代码里的BUG,就适当所以让B来拾掇别的人丢下的废物。可想而知,B在公司的眼里是啥样的方位,遭到 啥样的尊敬。
其次,让一自个修正另一自个的BUG,是功率十分低下的作法。每自个都有自个写代码的个性和窍门,代码里边包含了一自个的思维办法。人很难不经解说 了解他人的思维,所以不论这两人的编程技能高低,都会比较难了解。不能了解他人的代码,不能阐明这人编程技能的任何方面。所以让一自个修补另一自个的 BUG,不管这人技能多么高超,都会致使功率低下。有时分技能越是高的人,修补他人的BUG功率越是低,由于这人底子就写不出来如此差劲的代码,所以他无 法了解,觉得还不如推翻重写一遍。
当我在大学里做程序规划课程助教的时分,我发现假如学生的代码出了疑问,你底子是无法简略的帮他们修正的。我的水平显着比学生的高出许多,但是我却 常常底子看不了解,也不想看他们的代码,更不要说修正里边的BUG。就像上面说到的,有些人自个底子不知道自个在写啥,做出成堆废物来。看这么的代码跟吃 屎的感受差不多。关于这么的代码,你只能跟他们说这是禁绝确的。至于为啥禁绝确,你只能让他们自个去改,或许主张他们推翻重写。或许你能指出大致的方向 和思路,但是深化到详细的细节却是不也许的,并且不应当是你的职责。这即是我的教授通知我的做法:假如代码不能运转,直接打一个叉,不必解说,不必揣摩, 等他们自个把程序改好,或许真实没办法,来office hours找你,向你解说他们的思维。
假如你了解我在说啥,从今日起就对自个的代码负起职责来,不要再让其它人修补自个的BUG,不要再修补别的人的BUG。假如有人脱离公司,有必要要 有人修补他留传下来的BUG,那么说话应当格外格外的当心。你有必要指出需求他帮助的格外缘由,着重这件事正本不是他的错,正本是不应当他来做的,但是有人 走了,没有办法,并且诚实的为此类作业的发作标明歉意。只要这么,程序员才会毫不勉强的在这种格外关头,修补别的一自个的BUG。
不要嚷着要他人写测验
在许多程序员的脑子里,所谓的“流程”和“测验”,比真实处理疑问的代码还首要。他们跟你说起这些,那真的叫正儿八经,义正言辞啊!所以有时分你很 利诱,这些人除了恪守这些墨守成规的规则,还知道些啥。大约没有才干的人都喜爱追查各种规则吧,这么能够显得自个“没有劳绩有苦劳”。这些人自个写的代 码很平凡,不知道怎样简略有用地处理艰难的疑问,却喜爱在他人提交代码让他review的时分叫喊:“测验很首要!掩盖很首要!你要再加一些测验才干经过 我的review!”
正本code review是让他们帮助发现也许存在的疑问,有些人却如同把它作为了评判(judge)别的人才干,经历,乃至智商的时机。他们底子不了解他人代码的实 质价值,就知道以一些外表表象来判别。我在Google实习,终究提交了质量和难度都十分高的代码,但是一些彻底没才干写出这么代码的人,不光没标明出最 底子的必定,反而宣布烦闷的吼怒:“快——写——测——试!” 你觉得我会快乐吗?
我并不否定测验的用途,但是许多人提起这些作业时分,口气和心情是十分不尊敬,让人恶感的。这些人不光没有为处理疑问作出任何本质奉献,当有人提交 处理方案的时分,他们没有表达对真实做出奉献的人的尊敬和必定,反而责怪他人没写测验。如同比他高超的人处理了疑问,他反倒才是那个有发言权的,能够评判 你的代码质量似的:“我管你代码写得多好,我彻底没才干写出来,但你没写测验即是不行专业。你懂不了解测验的首要性啊,还做程序员!”
人际交往的疑问常常不在于你说了啥,而在于你是怎样说的。所以我的意思并不是说你不应主张写测验,但是主张就该有主张的口气和心情。由于你没有做 实践的作业,所以一些礼貌用语,比如“请”,“可不能够”……是有必要的。常常有人说话不留意口气和心情,让人恶感,却以自个是工程师,不善于跟人说话为借 口。永久要记住,你没有干事,说话就应当含蓄,切不行运用光溜溜的祈使句,说得如同这事他人非做不行,不做即是不了解规则相同。
礼貌的言语,跟人的工作彻底没有关系。身为工程师,彻底不能作为说话不礼貌的托言。
关于Git的礼节
Git是如今最盛行的代码版别操控东西。用外行话说,Git即是一个代码的“库房”或许“保管”,这么许多人修改了代码今后,能够知道是谁改了哪一 块。正本不论啥东西,不论是编辑器,程序言语,仍是版别操控东西,比起程序员的中心思维来,都是非必须的东西,都是起辅佐作用的。但是Git这东西如同特 别惹人动火。
Git并不像许多人揄扬的那么好用,其中有显着的差劲规划。跟Unix的传统一脉相承,Git没有一个杰出的包装,规划者把自个的内部完成细节无情 地走漏给了用户,让用户需求揣摩者规划者内部究竟怎样完成的,不然许多时分不知道该怎样办。用户被逼需求记住挺多八怪七喇的指令,并且指令行的规划也不怎 么合理,有时分你需求加-f之类的参数,各个参数的方位也许纷歧致,并且加了还纷歧定能起到你希望的作用。各种古怪的表象,比如"head detached",都逼迫用户去了解它内部是怎样规划的。跟着Git版别的更新,新的功用和指令不断地添加,后来你总算看到指令行里呈现了 foreach,才发现它的指令行就快成为一个(残次的)程序言语。假如你了解ydiff的规划思维,就会发现Git之类根据文本的版别操控东西,正本归于古代的东西。但是许多人把Git奉为崇高,就由于它是Linus Torvalds规划的。
Git最让人动火的当地并不是它用起来费事,而是它的“资深用户”们高高在上的心情给你形成的心思暗影。好些人由于自个“通晓Git”就认为高人一 等,摆出一副专家的心情。跟着用户的添加,Git开始的规划越来越被发现不行用,所以一些约定俗成的规则如同不断增加,能够写成一本书!跟Unix的传统 一脉相承,Git给你许多能够把自个套牢的“机制”,到时分出了疑问就怪你自个不知道。所以你就常常听有人煞有介事的说:“并不是Git答应你这么做,你 就能够这么做的!Unix的哲学是不阻挠傻人做傻事……” 假如你提交代码时不知道Git用户一些约定俗成的规则,就会有人吵吵:“rebase了再提交!” “不要push到master!” “不要merge!” “squash commits!” 假如你不会用git submodule之类的东西,有人也许还会轻视你,说:“你应当知道这些!”
打个比如,这么的吵吵给人的感受是,你得了奥运会金牌今后,把练惯用的器件还回到器件保管科,成果办理员对你大吼:“这个放这边!那个放那儿!懂不 懂规则啊你?” 看出来疑问了吗?程序员提交了有高价值的代码(奥运金牌),成果被一些自认为Git用的很熟的人(器件保管员)大声呵责。
一个尊敬程序员的公司文明,就应当把程序员作为运动健将,把程序员的代码放在显贵的方位。其它的东西,都应当像器件保管科相同。咱们尊敬这些器件保 管员,但是假如运动员们不了解你拟定的器件摆放规则,也应当标明出尊敬和了解,说话应当和气有礼貌,不应当骑到他们头上。所以,关于Git的一些指令和用 法,我主张咱们向菜鸟介绍时,这么开场:“你正本不应知道这些的,但是如今咱们没有十分好的东西,所以得这么弄一下……”(文章来自于南京欣才PHP培训课程)