“技能”!=“解决问题”

The Opposite of Skill有感

计算机人机交互领域的科学家 Bill Buxton 作于1995 年

Bill 说技能的反面是 ”Problem Solving” – “解决问题”, 这个听起来有点绕,我们看看IT 人士熟悉的一个例子吧。

一个IT 专业的大学生来面试, 简历上写“技能: 精通 Visual Studio C# 编程”。于是面试官请他实际用VS IDE 写一段程序 (冒泡排序)。一个“不精通”的面试者的编程过程实际上就是一个“解决问题”的过程。例如:

· 嗯, 怎么开始一个C# 的命令行程序呢?

· 定义数组是怎么弄的? 是“int [] arr”还是“int arr[]”, 还是 ArrayList,还是 Array 。哦, 我平时都是上网查的. 哦, 我不知道还有 MSDN 网站。

· 嗯, 为什么编译没过呢, 哦, 这里少一个分号。

· 嗯, 怎么设断点? 怎么定义命令行参数? 额, 我要查一查…

你发现他把时间都花在“解决 (低层次) 问题”上了, 你想考察的“算法技能”、“C# 程序设计技能” 都无暇顾及。注意, 这是在他认为非常精通的编程工具和编程语言中出现这样的问题。你要这样的员工么?

那怎么提高技能呢?

答案很简单, 通过不断的练习, 把那些低层次的问题都解决了, 变成不用经过大脑的自动操作, 然后才有时间和脑力来解决较高层次的问题。

从科研,或者理论的高度上说, 所有的“技能”都能总结成简单的”已经知道怎么做了”。

例如:

下围棋怎么做?每一步都占据全局价值最大的一点, 直到终局, 即可获胜。

打乒乓球怎么做?把对手打过来的球都打回去, 直到对手的球出界或下网, 即可获胜。

而这,应该是不正确的吧。

参考链接:https://www.cnblogs.com/xinz/archive/2011/08/07/2129751.html

posted @ 2020-01-24 12:37  似漆  阅读(169)  评论(0编辑  收藏  举报