Karl Wonders

Karl 在想什么呢

翻越高山的方法:近来学编程有感

3
2025-12-18

学习的山,令人生畏

今年我断断续续地在学编程,但这过程感觉挺糟心的。

都说隔行如隔山,作为一个域外人士,实在有种误闯天家的感觉。

即使我英文阅读没毛病,但看到那些代码和命令时,依然觉得它们是天书。

对我而言,编程领域的门槛不仅高,而且曲线极其陡峭。

最让我痛苦的是一种“盲人摸象”的无力感。我能学会怎么写下一行代码,也能照猫画虎地解决一个具体报错,但这就像是管中窥豹——即使可见一斑,我仍然看不清全貌。我不知道这些命令为什么是这几个字母的缩写,不知道它们背后的逻辑脉络。

我不能说,我会编程。

这种「只知其然,不知其所以然」的状态,让我觉得我并没有真正拥有这些知识。

有的时候我都觉得自己是麻瓜,看着这些咒语完全领悟不来,甚至有时候完全失效,即使有AI加成,但学不到什么真材实料的内容,很多次都是麻木的代码copy paste。这种学习过程真的太痛苦了。

为什么这么难?我发现是错配了

在反复的挫败中,我总是在想,到底是哪里出了问题?是我的脑子不够好使吗?

后来我发现,这堵“墙”的成因其实主要来自两个方面。

第一,老师的问题,好运动员不一定是好教练。

各个领域都有这样的现象:很多大佬有着丰富的经验和令人惊叹的学识,但他们却不擅长教学。

就像一个夺金的顶级运动员未必能当好一个教练。当你问他们问题时,他们往往会说:「哎呀,你就先这么做,以后你就懂了。」,或者说「这都不能理解吗?我不知道怎么教了」

其实讲真的,假使把他们抓起来「拷问」一下,真相就曝光了——这些大佬也不是完全理解某些技术学科的历史演变,也不一定受到过体系化的教育训练,他们脑子里的知识也一样是东一块西一块的残章断简。

拿武功类比,他们有用得顺手的几个大招,闯荡江湖完全没问题。但要把这些碎片知识整理成一本武功指导,把脑中的碎片拼成一张清晰的地图交给新手时,他们做不到。

这就是很多新手在入门阶段碰到的问题,不是没有榜样,而是榜样当不来「导师」。

第二,我(学生)的问题,要选对适合的教育方式。

当然除了老师的问题,我自己也有问题。

现在的编程教育大多跟我们都经历过的应试教育一样,属于「行为主义」那一套——给个「公式/方法」,然后通过大量的重复练习或者刷题,最终形成记忆。

对于很多人来说肯定是管用的,但我不行,我从来都不是应试教育模式的受益者。

我的认知模式是「建构主义」的。我是那种必须听故事的人——我必须知道这个「公式/方法」是谁发明的、在什么背景下发明的、是为了解决什么历史难题才诞生的,如此以往,我会根据自己的认知塑造自己的知识体系。

https://blog.sina.com.cn/s/blog_56b24c020101gtaf.html

我非常依赖「上下文/语境(Context)」——如果你不告诉我推导过程,只给我一个结果,我是无法接受的。

在我的潜意识里,没有来龙去脉的知识就是「浮夸的、虚拟的、不可信的」。

我没法把一个我不信任的东西内化进我的大脑,我想做的是真正理解这个世界的构建规则。

那将来要如何翻越这座高山?

这道门槛的存在,本质上是因为普遍的行为教学模式和我个人的认知模式之间存在摩擦和矛盾。

横亘在我面前的高门槛,其实不是并非是不可逾越的天堑。

学习不应该是一个绝望地等待别人给你标准答案的过程。既然市面上的“喂饭教程”不适合我,那我就不能强迫自己去咽下去。

努力死磕一个不合适的方法是不现实的,会消磨热情,也会浪费精力。

何不多花点时间去了解自身的限制,去摸索外界更多的可能?

既然我需要听故事、找结构才能理解技术,那我就应该去寻找那些能讲清楚技术历史的资料,去寻找那些能把代码还原成人类逻辑的导师(AI应该能帮上忙)。

当然,现在高山也依然在那里,但我知道怎么翻越它了。

知识是要学的,好比点亮更多星星,让夜空不再黑暗空洞。然后用自己的办法把星星连成线,构建属于自己的星座。

最终能知其然,也知其所以然。

这才是我想要的学习,这才是真正的掌握。