十六岁那年,我辍学了。学校不适合我。对我来说,计算机要有趣得多。不论对错,我都觉得在学校里是浪费时间,我真正的教育是回到家后才开始的。我对于学校再无好感,这意味着我也不再花心思去学习。他们把我诊断为某种学习障碍,并开始对我进行治疗。我只想逃得远远的。
我决定辍学,去当学徒程序员。这在北美人看来是个愚蠢的决定,因为他们都是去大学获取计算机科学的学位,但是在德国,高中辍学去当学徒是一件很正常的事。人们称之为双重教育体系,可能这正是德国获得成功的主要原因之一。
这套体系在德国有很长的历史。木匠和很多其他工匠都有自己的学徒体系来传授技术和经验,这一习俗传承了数百年。其中心思想在于,有些职业的成功,更多的是靠经验技能而非理论认知,因此对于这些职业,教育时间应该用在实际动手上,而非只是看和听。
许多德国的公司都招收学徒,就像北美公司招收实习生一样。如果有公司收你为学徒,那么这个位置是受国家保障的。如果这家公司倒闭了,你第二天就会被安排到另一家公司。公司之间结成一张网,确保这个位置的存在,这张网遍布全国。
与北美公司的实习生不同,在德国,学徒是被视作正式初级员工对待的,只不过工资更少一些(我当时是每月 400 美元),且每年有 60 天不用上班,去职业学校上课。职业学校会传授学生所选工种的理论知识,3 年学习期满考试合格后发给证书。顺利完成整个过程的学生学徒会获得职业资格。
我进入了本地一家名为 BOG Koblenz 的公司,它是西门子的子企业,有着招收学徒的传统。我至今还清楚地记得面试时的一道题:
“一个池塘中的百合花每天都以翻倍的速度增长。第一天是 1 朵,第二天 2 朵,第三天 4 朵,第四天 8 朵,第五天 16 朵,第六天 32 朵,依此类推。如果第三十天的时候,池塘装满了百合花,那么第几天的时候,池塘里有一半都是百合花?”
一点都不难。
和我一起开始当学徒的还有三个人。第一天我们参观了这家 150 人的公司,这个规模对于当时的我而言已经很大了。第一年我们干了不少活:头 3 个月在餐厅,然后 3 个月帮忙记账,再 3 个月待在仓库里,最后 3 个月在前台接待。他们告诉我们,这是通过仪式。
在餐厅的 3 个月里,我很快认识了公司里的人,并知道了他们喜欢喝哪种咖啡或茶。我把他们都招待得好好的。我最喜欢的一个小组在二号楼的地下室里工作。我不记得他们的头衔是什么了,但他们肯定是在进行一项秘密开发工作。
他们和公司里其他人做的事情完全不一样。公司里大部分人都用一种名为 Rosie SQL 的深奥的编程环境,那东西对我而言就像天书。而这个小组的人用的是 Delphi。我爱 Delphi!它是把人放在机器之上的编程语言。它能让程序员快速实验、做出原型,并获得满足感。它的名为 VCL 的窗口管理库比我以前见过的任何东西都要伟大。更重要的是,小组的头头是 Jürgen。
Jürgen留着花白的长发,50 多岁,摇滚乐迷,非常适合去参加地狱天使帮派(译者注:美国以骑哈雷摩托横冲直撞而闻名的团体)。他是一个反叛者。他拒绝穿公司的制服,拒绝使用正式的语言,常用馊点子公开召集别人。尽管如此,每个人都很尊敬他。我努力表现出想为他工作的意愿。我借来了 Delphi 的手册,并在送咖啡的间隙努力学习。
与此同时,我每周五都去职业学校上课,每年有两次,我们要在学校待两个星期上课并参加考试。这种学习的方式更适合我。它与工作紧密相关。我跟着 Jürgen 的小组学到了很多基础的东西。我们学习了算法、Big O等,甚至还学了点基础的焊接和电工。
事实证明,所谓的学习障碍并不存在,我只是需要动手实践。我无法理解那些没有解决过的问题,更无法给出答案。在职业学校,我了解那些正在解决的问题,我有过亲身经历。这种感觉棒极了!我的自尊和自信很快得到了增强。
第一年结束后,Jürgen把我抽调到他的地下室小组。这大概是我职业生涯中最重要的一件事情。Jürgen 是一位大师级的老师。在他创造的环境里,可以很轻松地逐年实现 10 年的职业发展。那是我在 Shopify 努力想要创造的一种环境。
大多数时候,当我上班时,会发现一张打印了我前一天写的代码的纸,上面到处都是用红色记号笔做的标注。我用语不当的地方,有更好抽象可选的地方,以及本来能够做得更好的地方都被标出来了。他教会了我不要把自尊与自己写的代码搅和在一起。代码总是有需要改进的地方,能够得到反馈是一种礼物。
我还记得我们为通用公司写过软件。一个车商需要一套快速的系统来估算回收的二手车的价值。这是一个不小的挑战。Jürgen 把这个项目交给了我。快到要交货的时候了,公司专门出钱给我置办了一身西装。毕竟我们是为西门子工作的。
车商所在地离我们有一天的车程。出发的前一天,Jürgen 若无其事地跟我说,他临时有别的事情,不和我一起去了,我得一个人去交货。我感到不知所措,但最终还是努力给客户留下了好的印象,把一切都搞定了。
这种事后来时有发生。Jürgen 知道我的能力范围,并不时制造一些适当超出范围的情况。我通过尝试、犯错和实践增强了能力,很快就能够把职业学校学到的理论付诸实践。我成功了。
我的学位在北美不受承认,因此我在这里只是个高中辍学生。我在 Shopify 的合伙人拥有博士学位,因此我们经常开玩笑说我们的平均水平是本科毕业生。
但学位不重要。重要的是经验。那是我的学徒经历和双重教育体系教给我的:实践并快速地学习才是人生的终极技巧。如果你能做到,你就能不断制造奇迹,最终获得成功。
或许学徒经历对我而言,最重要的就是给了我一个领先的机遇。如果我也去上大学为了博士头衔而奋斗,也许现在我才刚刚走出学校。而实际上,我今年 32 岁,却已经有了 16 年开发复杂软件的经验。
感谢德国的双重教育体系,它让每个学生都能人尽其才。根据最近的一次统计,目前德国共有 356 种不同的职业可以招收学徒。从美发师到烤炉工,以及各种计算机编程专业。对于像我这样的实践学习者,学徒制度铺就了一条通往成功的道路。
对我而言那是完美的环境。我学到了很多,也很庆幸自己选择了这条路。我希望更多的国家在面对辍学和失业问题的时候,也能为他们的学生提供类似的选择。
(作者 Tobi Lütke 为 Shopify CEO 及联合创始人之一)
英文原文:http://tobi.lutke.com/the-apprentice-programmer
译文链接:http://www.ofgeek.com/2013/03/%E5%AD%A6%E5%BE%92%E7%A8%8B%E5%BA%8F%E5%91%98/