站在普通人的角度,谈谈教育、兴趣、Linux 与编程

从迈入 2021 年以来,我就一直想写点关于这个话题的东西,但这毕竟输出的是自己的价值观,不可能要求所有人都能理解,更何况我还只是个涉世未深、从未迈出过象牙塔的本科生,又有什么资格对这个话题评头论足?

尽管如此,在身边多了很多对我擅长的领域感兴趣的人后,我觉得也差不多是时间好好想想很多事情的本质了。

本文基本为作者深夜自嗨时挥笔写就,可能部分语句没有道理没有逻辑甚至没有基本的语句流畅度,可能包含妄加论断和大放厥词,还请谅解。此外,作者本人对思想交流持开放态度,欢迎参与讨论或留下反馈,感谢。

当我们谈论现实

我记得有听好友吐槽过教科书的不伦不类。它们既想激发学生对学科的兴趣,又想保持自身的绝对严谨,其结果就是往往写了很多复杂的公式和推理,却并没有带来什么实际意义,甚至都没能告诉学生这些理论知识能用来干什么。

这是一个很大的问题。一方面我们抱怨着现在的学生对学习越来越不感兴趣,另一方面我们把教科书写得越来越让学生提不起兴趣。

当我们不是因为学科之美,而是因为应试、因为绩点、因为越来越严重的内卷化而不得不学习某个学科的时候,它已经变味了,已经像饱受诟病的那样,「我又不可能买个菜还算个解析几何」。

不仅仅我们的教育是这样。每一个站在风口的行业,面临的都是这样的困境。我很小很小的时候,所有人都在学乐器学书画;我读初中了,所有人都在学机器人;我上大学了,大人们疯狂往计算机里挤,小朋友们也开始学少儿 Python 了。虽然在所有人都往人多的地方走的世界无可厚非,虽然确实真的有很多人藉此培养了自己的热爱,但对于更多的只是因为「它在风口上」、「怕孩子掉队」而一头扎进去的人,这值得吗?

在我看来,教科书、兴趣班甚至每个对某学科比常人多懂一些的人应该做的,不是摆架子摆身段昭告天下这门学科有多科学、多严谨、多复杂,学习它能带来多少好处,能帮助人在什么竞争中又出人头地一分。恰恰相反,是要让大部分人感受到这门学科有多诱人,让人知道为什么历史上有那么多名人,沉醉于这个学科带来的愉悦。

所有行业都应如此。Linux 之所以诱人,不是因为它历史有多么悠久,不是因为它配置起来有多复杂,更不可能是因为它只向有兴趣的人开放,而是因为,当我第一次在键盘上敲出那些命令,让看起来就很高端的、疯狂输出各种字符的窗口只围着我一个人转;当我花了好几个小时第一次编译出自己的嵌入式系统,随便抓起个 U 盘烧录完成功启动一台微型电脑;或者更早之前,当我执行 sl 之后看见一辆停不下来的火车从屏幕这边开到了屏幕那边时,内心涌起的兴奋感和成就感,就算用多少本 Linux 史书都压不下去。

就像我之所以能从容面对藏在各种各样的代码里各种各样的 bug 而丝毫不泄气,能够花一整个下午只是为了稳定一个很简单的特性,不是因为我用的语言有多先进,不是因为我写出来的代码性能有多优异,只是因为我满足了自己或者身边人的某个微不足道的需求,而满足这些需求带给我的成就感,胜过读完十本《从入门到精通》。

停止把这一切妖魔化吧。不管是数学还是物理,是 Linux 还是编程,它们对大部分人而言都不过只是一种与世界相处的方式,很多时候我们却一直在强调我们所懂的东西有多么深奥和高级,一直在为这一切设置无形的门槛,一直在劝退每一个试图了解这一切的人。「只有特别感兴趣的人才会深入钻研」没错,但是不试试,又怎么能知道自己是不是感兴趣呢?实在不行就当盲人摸象了吧,摸了象的盲人好歹能在某一天再次摸到象时意识到这是象,被「象很大很高很重一脚能把你踩死」这种话吓住连象都不敢摸的盲人,下次见到象也只有干瞪眼的份儿。

总有一天,我们都会负起自己该负的责任,成为各行各业各领域不可或缺的那一代人。到那时,难道我们还要设置门槛,劝退那些稍稍感兴趣的、还在犹豫的人吗?

至少我拒绝。如果我有机会,我会毫不犹疑地扔掉那些初步接触时根本不重要的死板而繁杂的理论。

一直以来,我也确实是这么做的。我想鼓励身边更多的人找寻 Linux 和编程的乐趣,想让他们知道编程不是改改代码看看输出就完事儿了,而是经常甚至马上可以派上用场的东西,如果有想做的东西大可一步一个脚印地做出来没人看笑话,Linux 也不是萌新之敌不会随随便便就让电脑爆炸,正相反,每条正确的指令带来的正反馈和命令行带来的强掌控感让人欲罢不能。在学习的过程中必然会碰到很多艰难险阻,而且会发现自己还有太多太多不知道的东西,那都不重要。重要的是,兴趣被调动起来了,然后一切都好说了。

话又说回来,那些理论真的不重要吗?当然不,否则也不会几乎所有人都从理论谈起。非要让我说的话,初次了解时,知道「这是个啥」确实很重要,除此之外的那些长篇大论,就留到兴趣使然时再说吧。

当我们谈论我

我接触编程的具体时间已经很模糊了。很久以前,当我还是个 MC 玩家时,我第一次接触了我的「万恶之源」:ModPE。它采用 JavaScript 的基本语法,实现了一些能在 Minecraft PE 中改变游戏局势的功能。

在游戏里,当你不再需要挖一整个下午才能挖到一点点钻石,而是可以写几行代码直接刷满几箱子的钻石,你会选择哪个?这就是我初次真切地感受到编程带来的「成就感」。

那之后在社交平台上的成就暂且不提,借着 ModPE 的机会,我逐渐跟着各种现在看来很稚嫩的教程开始访问 Android 系统提供的诸多功能,直到我成功绕过游戏创建了第一个现在看来也很稚嫩的悬浮窗。很稚嫩,但作为一丢丢刺激、一丢丢兴奋和一丢丢成就感已经够了。以此为契机,我开始逐渐接触 Java 与 Android 开发。

在这之后,就是上架应用,获得微不足道又确实让人欢呼雀跃的下载量,甚至还有来自那么几个人的捐赠。

在这之后,就是逐渐接触越来越多的东西,学到越来越多的知识,开始思考、了解这一切的本质,开始逐渐向着独当一面进化。

尽管如此,在我已经懒得关注那些数字的今天,我还是很怀念第一行代码带给我的最初的感动。那是几乎改变了我整个人生轨迹的力量。

所以我其实并不觉得自己就有什么特别不一样的地方,我只是碰巧多会了一门手艺而已,这本质上和隔壁张三会木工楼上李四会弹琴一样,只是给了我一个稍微有点不同的与世界相处的方式。

家里书桌书架坏了,张三可以自己修,我们在忍和换之间还能选择;《底特律》的开场音乐尤其动人,李四可以自己把它弹出来,我们可以静静欣赏或者在内心大呼「卧槽牛逼」;教务系统少了好看的界面,会编程的人自己写一个,其他人还能忍受,又不是不能用。懂得如何更好地与世界相处确实会带来一些差异,但它远远没到被神化成一个不可或缺的技能的地步。

大部分人不会木工不会弹琴不会编程,他的一辈子照样可以过得很快乐。

一些时候的一些人,明明比普通人多了那么多能与世界好好相处的方式,过得却并不快乐。


希望读完这篇并不短的随笔的你,在面对世俗的现实时,过得能更加快乐。

至少你可能还有写下人生中的第一行饱含着自由与激情的代码,或是执行人生中第一条不是因为「教程」这么说而是因为你想这么做的指令,或是摸出积满尘土的乐器感受遥远的生疏和热爱,或是不为了不挂科只是单纯地想要了解一门学科而翻开一本书的机会嘛,不是吗?