稀里糊涂的,我也成了半个创业者了。
从金融转去IT,除了年轻时的任性,我大抵还可以说是出于兴趣。毕竟没有沉重的家庭负担,青春给了我最大的资本去折腾,和自己的内心对话,寻找生命的激情。而现在,年近而立,父母逐渐老去,我也到了挣钱养家的年龄,试错的成本已经越来越高了,为什么突然放弃高薪的工作,走入一个自己并不熟悉的领域呢?
我也常常问自己这个问题,甚至越问越焦虑,越觉得课备得还不够好、准备不够充分、就业没渠道、招生没底气,等等等等,进而怀疑自己究竟能不能开一个好学校、做不做的成职业教育。
我的选择到底对吗?我到底为什么要做编程教育呢?
我为什么要做教育
也许,因为我确实想在力所能及的范围内做成点什么事情,去改变这个社会,让它更美好一点。
似乎有点阴差阳错,从大学开始,我的许多志愿服务、工作实习经历,都跟教育有着千丝万缕的关系,也一直对一种公平的、呵护人精神成长的乌托邦式教育图景抱有莫名的憧憬。大概因为这种渊源,在写完一个简易操作系统、建立起从MOSFET到理论计算机科学的体系之后,我慢慢觉得完成了内心关于计算机的使命,开始重新拾起曾经的教育梦想。
我想做一种与众不同的教育。
- 第一,它应当是有趣的,保守住孩子们天生具有的好奇心,而不是填鸭式地打击它。
- 第二,它能够发现和培养一些人对科学的审美。
- 第三,可能也是最重要的一条底线,我不希望它只服务于中上阶层,甚至是那些在学网球、赛马的孩子。我所追求的教育,应当是普惠性的,有利于社会公平。
当然,还有一条跟教育本身不太相关的前提,就是这种模式最好是自给自足的。毕竟我自己的生活目前也还是个问题,再掏腰包贴钱去做确实不太可能。
按照这样的目标,我关注过少儿STEM课程,在打工子弟小学做过志愿者,在公益职高教过机器人,应聘过创新学校,也在通识教育机构工作过一个学期。几经辗转,我逐渐觉得,编程职业教育也许是最接近我理想的一种可能性。
当然,我的探索大都基于自己的理工科、IT背景,接触过的其他教育模式不多。但正是因为自己的程序员出身,对行业有所了解,我才愈发觉得,貌似高大上的编程,完全可以拿到职业教育阶段去做。
作为新蓝领工人的程序员
许多人觉得编程是黑科技,很难学会。在几十年前,这种观点还是很有道理的。然而,随着各种框架、库的成熟,尤其是开源运动的蓬勃发展,程序员再也不需要像以前那样,对代码的每一个模块、每一行代码都了然于胸了。经典教材巫师书的作者、MIT教授Gerald Sussman对编程这种前后的转变有很好的总结:
(计算机系的)学生们绝大多数时间都是在读各种库的手册而已,想办法把它们攒在一起,只要最后能工作就行了。
事实上,现在即便BAT、FLAG这样的公司,也大量存在着“面试造火箭,工作拧螺丝”的现象。普通的中小企业、外包公司里,许多程序员更是利用各种框架,日复一日地做着所谓的CRUD工作。对于这个群体,“码农”这样一个带有些许自嘲意味的称呼其实是非常贴切的。即便稍微复杂一些的多线程、分布式,和普高阶段要求掌握的圆锥曲线、化学方程式配平相比,孰难孰易恐怕也在两可之间。
一言以蔽之,如果目标是进外包公司、赚1W上下的工资,那么程序员的含金量并不高,不过是个需要多多练习的熟练工而已,和20年前的流水线操作员差不多。
当然,即便只是信息时代的蓝领工人,和厨师、理发师、平面设计等职业相比,入门编程也并不容易。但这并不意味着编程不适合做职业教育,而是应该用具体的教学设计去解决。教研是一个复杂琐碎的话题,本文暂且不谈,以后再另行讨论。
用编程教育实现我的愿景
如果难度对编程职业教育不构成本质挑战的话,对于我最初想追求的愿景来说,剩下的反倒主要是优势了。比如:
- 程序员是自己代码的造物主,这种掌控一切的能力常常可以激发人的想象力、创造力、破坏力,转化成学习的乐趣。
- 编程的学习往往可以看到及时的反馈,而不用等老师花几天、几周的时间批改作业,这也是一种比较好的学习体验。
- 可以和培养阅读习惯的培养结合,对于文档、手册的阅读几乎是程序员的必备技能。
- 可以和信息搜集能力的培养结合,GIYF是程序员社区中非常流行的黑话。
- 可以和终身学习能力的培养结合,毕竟技术更新换代很快,搞开发的都要活到老学到老。
- 可以加入对科技伦理、996等话题的探讨,鼓励大家参与公共事务。
- 许多人都在鼓吹未来是人工智能的时代,一些行业工人甚至已经开始失业。随着自动化程度的提升,未来程序员岗位的比例、甚至数量,会不会进一步升高?
- 如果全球化继续加深,英语障碍又能解决好的话,也许还有机会承接国外的项目,甚至出国工作。
- 最最重要的,即便只是成为一个中等水平的程序员,也能帮助不少人实现阶级的跃迁了。
也许还有其他我没有列全的优缺点。比如事实上,当我定位成编程的职业(而非985/211)教育时,恐怕就很难实现“培养对科学的审美”这个目标了。但即便如此,如果一种教育形态能实现上面罗列的那些要素,也足以让我觉得值得一试了。
这真的是一种与众不同的教育吗
不过,编程职业教育其实并不是什么新鲜想法,非学历的有达内这种上市公司,学历的各种中专、技校更是早已有之,甚至传智都办起了大专。如果眼界再放宽一些,连融入了公民教育的编程职校也有了,比如美国的Make School,已经有了3届毕业生。我要做的跟他们有什么不同吗?
这是一个很尖锐的问题。我想了又想,也许借助游戏化教学的手段,学习体验可以被设计得更有趣一些?也许我们可以融入更多创新教育的内容?网课的方式我还在犹豫,但即便用了,也是被人炒剩下的概念了。似乎无论从哪个角度来看,我想做的都算不上颠覆性的创新。
是的,也许确实是这样的。双师也好,自动化测评也好,终究都只是手段。我想做的,归根到底还是教育,而不是互联网。只不过在过去的几十年当中,由于种种原因,K12变得越来越畸形,职业教育更是没有得到政府、老师和家长的重视。这种现状植根于快速城市化、贫富两极化的土壤之中,人们普遍焦虑、没有安全感。教育作为曾经改变命运的渠道,也随之变得功利化,成为想尽一切办法也要进一步巩固命运的手段,是有其合理性的。
在这个意义上,与其说我想做的有所创新,不如说有所复古——回到那种朴素的职业教育,踏踏实实教人一门安身立命的技能,同时关注人的全面成长。当然,并不是说中国的职校不关心教育质量、不注重学生身心,但实事求是地说,在东亚文化重视学历的影响、以及政策指挥棒的引导下,流入职业教育的优质资源并不多。因此,这个领域似乎还是一片可以深耕的试验田。
写到这里,我大概可以稍稍安抚自己的焦虑,回答文章最初的问题了。我要做一种更好、甚至更土的编程职业教育,这个选择没什么大错。这种教育也许有机会培养人更底层、更全面的能力,实现我更多的理想;也许不能;我还不知道。但有Make School这样的前人探索,我起码应该试一试。