你不认识我。但我知道你的一些事。
我知道你能在四十人的教室里,听出第三排那个男生其实没背下来——他念得一字不错,只是不敢抬眼。
我知道你改一本作文要八分钟。一个班五十本,就是六个多小时。这六个多小时里,你还要回家长的消息,还要想明天的早读讲什么。
我也知道,你大概从来没有想过,有一天会翻开一本讲编程的书。
所以这一页,我想先拆掉三堵墙。
误会一:学编程要数学好
这本书里,不会出现一个你看不懂的数学符号。
你需要的全部数学能力是:会比较大小,会数数,知道什么叫“一半”。就这三样。
你之所以觉得自己“数学不好,所以学不会编程”,是因为你见过的所有编程材料,都是写给喜欢数学的人看的。它们用数列讲循环,用素数讲判断,用斐波那契讲递归——不是因为这些例子更好,是因为写书的人自己喜欢。
这本书用作文、诗词、病句、成绩单讲。不是因为它更简单,是因为它更像你。
误会二:编程是年轻人的事
你每天在用的这门语言,比任何一门编程语言都复杂。
汉语有歧义、有省略、有言外之意、有一词多义、有“下雨天留客天留我不留”。你不但会用,还能站在讲台上,把它拆开讲给一群注意力只有七分钟的人听懂。这件事的难度,超过这本书里任何一个章节。
至于“年龄”——你三十岁以后学会的东西,新的教材、新的考纲、新的班级管理办法、怎么跟一个抑郁的学生说话,哪一样不比学编程难?
学编程真正消耗的,是忍受“我不知道”的耐心。而你在等一个学生开窍这件事上,耐性惊人。
误会三:我这辈子只能当一个技术的使用者
使用者和制作者之间,只隔着一个下午。
这个下午之后,世界会变一点点:你不再只能接受别人做好的东西,你可以做一个很小的、只给你自己用的东西。
这件事的意义,比“学会一门技能”大得多。当你只会用的时候,你只能接受别人替你做好的决定。当你能做一个小的,你就能决定“这件事到底该怎么办”。
这本书真正想说的
一句话:
语文求“言有尽而意无穷”。编程求“意无穷而言必须尽”。
你教了这么多年书,一直在告诉学生:好文章要有余味,话不能说尽,说尽了就没有想头了。这是对的。这是文学。
而编程,是一门把话说尽的手艺。每一个“大概”“稍微”“你懂的”,都必须被替换成一个准确的、可以执行的句子。否则机器就停在那儿,一动不动。
所以这本书要教你的,不是一门新技术,是一种新的说话方式。
你会发现,学会它之后,你上课举的例子会更准,你写的要求会更清楚,你跟家长解释一件事会更快。因为“把话说尽”这件事,一旦练成,是收不回去的。
这本书怎么读
三种读法,你挑一种:
全线:从第一章读到第二十二章,一周一章,五个月。适合真的想学会的人。
实用线:第一到第四章,然后第十、十一章,然后第十七到十九章。八周,够用,能解决你八成的重复劳动。
教书线:第一到第四章,然后第十五、十六章。目标不是自己写程序,是能给学生开一门课。
每章都不长,一个晚自习读完,下一个晚自习做完。每个“卡住了”的小节,都写着最常见的三个错误——你先看那一段,再动手。
这本书不教什么
说清楚不教什么,比说清楚教什么更重要。
不教数学。一次也不。
不教算法竞赛、不教底层原理、不教性能优化。
不教前端花活。界面够用就行。
不承诺转行,不承诺高薪。
不假装学习是轻松的。会卡住,会烦,会想放弃——书里会明说,并且给出一个具体的动作:卡住二十分钟,就站起来。
最后
说句实话。
这本书不会让你变聪明。它只会给你多一种笨办法:把一件你本来要用手做五十遍的事,写成一段话,让机器替你做。
等你第一次这么干成的时候,你会有一种很奇怪的感受。不是“我学会编程了”,而是——
“原来这件事,本来就不该由我来做。”
那种感受,值得你花五个晚上。
写于二〇二六年秋,一个刚批完五十本作文的晚上。