161
社区成员
技能的反面一节中:
那怎么提高技能呢? 答案很简单, 通过不断的练习, 把那些低层次的问题都解决了, 变成不用经过大脑的自动操作, 然后才有时间和脑力来解决较高层次的问题。
这一段中,作者指出技能的反面是过于着重于具体地解决低层次问题。
我的疑惑在于,我们如何区分高层次与低层次。文中作者指出,“需要花费脑力解决”是更高层次问题的一个关键特征,而可以通过自动化的熟练度来解决的问题通常是是一个低层次的问题。
但是显然,当我们经常思考一类问题时,下一次遇到类似问题我们其实也可以仿佛直觉般不经思考得出答案,那么这种行为是否模糊了高层次与低层次之间的界限?以数学为例,掌握和使用基本积分公式可以视作低层次的行为,而使用公式解决复杂积分问题可以视作高层次问题,但是熟练的数学竞赛同学完全可以不经思考地对复杂积分问题进行分解,那么此时如何定义层次呢?
我的疑惑是,是否针对不同的人而有不同的高低层次的判断标准呢?根据人的认知程度不同,“技能”这一概念是否也有不同?
在我自己实际参与的软件开发过程中,很多时候我们会采取成熟的方案,比如采用中间件、建立路由守卫、用户鉴权模块……什么时候使用这些方案?如何使用这些方案?这看似是一个高层次的决策性问题,但是实质上需要通过大量试错和项目经验的,而我认为其是一个高层次问题。“需要花费脑力解决”中的“脑力”,不仅是指解决该问题时付出的脑力代价,而且也包含了曾经为了解决相似问题而积攒的经验与教训。对于不同的人,他们的天赋其实差不多,真正有所差异的是他们的经历与经验,而如果我们将“经验”作为“曾经付出的脑力代价”计入考虑范围,就会发现对于不同的人,也能有统一的高低层次判断标准。