在不了解的情况下脱口而出:太难了,学不会。
究竟是什么原因造成的这种印象呢?
刻板印象
人们以前接受过很难的东西,比如数学,下次再遇到数学相关的,代码相关的,条件反射产生『厌恶』,形成了错误的观念
太难了。
没接触过具体某项技术的人没办法衡量这项技术的学习难度,只能通过听过见过用过的相关技术产物,根据“产物越厉害,技术越难学”这种朴素想法来推测学习难度。
当你跟一个没接触过计算机技术的人提编程,他们就得先想想编程都能干些啥,这种情况下脑子一般会先给出记忆中印象最深刻的事例,也就是最牛逼的事例。比如阿法狗这类强到跨界的新闻。
于是——
编程→阿法狗→阿法狗好厉害→编程肯定好难
还有个原因是见识的盲区
和人一提珠穆朗玛峰,大家就想到峰顶,满脑子就一个高,浑然忘了珠穆朗玛峰一样有山脚……
前一阵开始自建博客,稍微接触了一点前端的语言
感觉 css 这类非编程语言的表达比较接近自然语言,基本上只要会用 background、border、font-size 这类日常生活的词汇来描述自己的需求,就很容易在搜索引擎搜到合适的表达
而 js 的表达跟自然语言的差别就有点大了。不事先浏览一遍文档,恐怕我是不知道 window、element、attribute 都是些什么玩意儿的,而不知道某些表达的存在,有时甚至会导致连设计的算法都很冗杂。
我只需要使用js 0.1%的功能,却要先学习它1%的内容,而一段时间不使用又会忘,这就让人觉得有点难。
同样是编程,Android 上的 Tasker 或者 iOS 上的 Shortcuts 就做的很好,编程语言都被简化成点选拖动,不用每次都经历【学习语言-使用-长时间不用忘记语言】的循环了
估计是语法吧.
毕竟学英语也是语法比较难的.
也可能吧……
倒是能理解,过不选择器也不难啦,id,class、tag 三种,配合两种关系基本可以满足大多数需求了。元素选择方式会个两三种也可以通吃。这种写个笔记,每次几分钟就能回忆起来。
遍历、判断、循环、基础数据类型 这些如果只是为了满足简单需求,每种会一个模式就好,而且语法在各种语言下十分相似。就算长期不用,大概有个几百字笔记,用的时候照着套也不需要什么额外的准备。
面向 Google 编程,稍微入一点点门,觉得日常没有啥障碍……
(不过写惯了 JS 忽然写 PHP 我也要去查查查,
((说的好像我写 JS 不查查查一样。随手翻手册,嗯,强行认为是好习惯
确实难,不过干什么不难呢
让我想起了我那严厉没人性的钢琴老师。
我就是在思考这些问题(印象)是怎么产生的,传统教育的阴影?
对新生事物的恐惧,这是人性啊
昨天想到,用话术可以解决一部分问题。
先别提编程,只说怎么做,一二三步之后见证奇迹。等他有兴趣之后再谈编程。(就跟推销员一个路数的
有现成的案例可以参考:
搞数学科普(趣味向)的大神 Matrix67 博客
他的努力产生了三个效果:
因为学会任何一个东西都很难,只不过有的东西是在潜移默化中学会的,有些东西则是并不需要完全精通就能用了.
第一种例如幼儿从添加辅食到能自己进食,需要数月的时间.但是应该没有人觉得吃东西是一件难学的事.
第二种比如做饭,能炒个西红柿鸡蛋,能把食物折腾熟了,就可以说自己会做饭了,实际上大多数家庭厨师掌握的技能只占烹饪这一技能的很小的一部分,即使是这样,也需要多年练习才能掌握什么叫盐少许.
还有的东西是看着很难点,但是做起来很难,比如拧水管,很多人觉得这有什么难的,实际上能拧到不滴水,也需要下大功夫的.
而编程,对于大多数语言来说,总要先了解几十个关键字,几个语法结构,几种数据类型才能写出来一个没什么大用的小程序.
另一方面,完全零基础的人,看到代码根本不知道哪是重点,或者说完全不知道这是什么东西.这点不只是编程,所有技术类的都是这样,我的工作是建筑设计,也有类似的情况,拿出一套图给一个纯外行看,给出的评价都是**“密密麻麻的,你不头晕么?”**
这就有一个问题:学会?!为什么要学会,或者为什么认为要么不学,要么全学会。
学一句受益一句的事。跟英文似的,为啥非要流利对话才行,我认识 Men 就可不不进错厕所,学一个单词受益一个单词。
好奇这种思维惯性怎么产生的。
其实就是借口,把功能当作困难,心里根本不想学,不想走出舒适区。
以前跟人推荐 foobar2k 时就经常碰到说 fb2k 好难的……
一个播放器,你要不折腾也就是双击播放的事,难点在哪?
明显是懒得换播放器。
对,就是这个点。一种闭目塞听的倾向性。
但是,在思考这个问题的同时,我主要到我自己面对某些问题时的第一反应也和这个类似。就更想深入理解这种心理。
看心理学方面关于 舒适区
的文章
但并不能解释全部。
彼此聊天,仅仅是聊到某个东西时,也会给出这样偏执的判定。此时给出怎样的描述都并不会影响到自己的舒适度。
就我自己来说,这类判定都是下意识地在脑内开虚拟机跑了一趟得到的返回值
(isHard = Time>m || Interesting<n) ? console.log("Y") : console.log("n")