自从开设计算机科学基础班(集体班,一对一,阅读班)以来,收到了很多学生的好评。我很高兴地看到很多完全零基础的人,真正从零开始,学会了计算机科学最精华的部分。这让我大受鼓舞。从我自己的探索,遇到的各种社会问题,我再次深刻地认识到教育的价值和意义。
在这种前提条件下,我已经有开设计算机科学进阶班的想法一段时间了。目前已经有 13 岁的小白鼠同学试了一节课,我发现一个孩子真能在短时间内学会一些曾经只有博士生才能学会的东西。 我也曾经试过即兴教一个朋友大提琴。之前她从未碰过大提琴,结果只花了一个小时,就能拉出巴赫 Prelude 的第一个小节。当然仍然是不流畅的,但原理已经掌握,自己多练就会不断提高。掌握本质原理,不断提高。师父领进门,修行在个人。我感觉这是我领悟到的教育的真谛。
关于计算机科学进阶班,我还没有非常确切的内容和计划,但最初开设基础班的时候,其实也是一样的情况。除了前两节课的内容,后面的其实都是我根据教学情况,临时想出来的。但我最好还是大概列出一些内容,让同学们心里有个底。
大概的内容范围如下,虽然可能临时根据情况更新或增删:
课程初步计划,应该有至少 8 节课。课程会有专门的交流群。每节课后,学生可以在群里讨论自己的理解和发现。我会临时想一些小练习给大家做,但这个课程相当于是大学“研究生班”的级别,所以课后主要是开放的研究方式进行思考和探索,而不是做固定的练习。我也许会建议一些论文给大家看,或者自己实现一些以前没试过的事情,或者探索学生自己感兴趣的方向,或者做一些小型工程实践。
由于内容的难度很大,所以我不是很确定 8 节课能够完全讲清楚这些内容,可能会超出一些。我打算按照一节课 1024 人民币进行收费。课程的单位课时学费比基础班要低。最初的学费是 8192,包括 8 节课,每节课 2 小时。虽然按我的性格会尽量精炼,但如果无法在 8 节课完成,也许会延续 1~2 节课。延续的课时不另外收费。
由于课程内容会用到基础班的很多知识,课程的招生对象主要针对基础班(包括一对一和阅读班)已经顺利毕业的同学,但如果有自学过 Scheme 或者函数式编程(比如 SICP)的其它学习者,我也可以考虑他的加入。
课程只招收基础班已经毕业的学生。基础班已经毕业学生,可以发微信给我报名就行。注意,请勿用微信转账。由于进阶班对基础要求比较高,课程不接受没有参加过基础班,或者基础班未能完成的学生。