--选修“信息素养与实践”有感
这学期选了一门课,信息素养与实践,内容是一些信息检索的方法。我敢说,如果每个程序员都能正确高效地检索自己需要的知识,知乎上面的弱智编程问题能少一半。
有人可能会提出这样一个悖论,一个菜鸟在什么都不知道,他该如何定制自己的搜索关键词?或者说,他应该搜索什么才能尽快找到答案?我的解释是,假设一个人学java(什么语言都无所谓,这里只是举例子),他应该知道自己学的是java,首先要搜索的很可能是这个。于是他搜索了java,第一个结果是百科,接下来会是一系列的不同人写的教程。看着看着,他发现自己并不理解“变量类型”,或者他一开始就想看看java都有哪些类型,于是他在搜索框后面补上了“变量类型”。然后他发现自己对布尔类型的使用并不熟悉,于是他又搜索布尔值;看着看着又不理解类型转换是什么规则,于是又开始了新的搜索。就是这样,顺藤摸瓜,自然而然的进行下去。或许他没有学完java的全部内容,因为java这个语言非常复杂,但起码他会用搜索引擎了。日后他如果遇到别的领域的问题,也能按照这样的套路搜索。
我一直在思考,大家上的是同样的课,做的是同样的作业,为什么最后的差距会如此之大。有个高人指点了我,真正的高手会主动去获取课堂以外的知识。课堂的知识是考试要考的,是我们需要背的;但是它也可能是滞后的,不易用的,或者没有实践意义的。总之,它并不一定是好的,是适合我们的。我们最终目标是进入业界,成为这个行业的一份子,在保证课堂知识没有疏漏的情况下,当然要尽可能与业界接轨。互联网是程序员架起来的,上面关于计算机领域的知识会有很多。这样的东西我们不去利用而是错过了,真是太可惜了。
高手能够从知识的获取中,知道自己缺少和需要什么。我们会在技术社区闲逛,会遇到很多很多自己看不懂的技术名词,会遇到很多很多新诞生的技术组件。但我们很少去想这个是不是我们需要的,或者我们能不能用这个来提升生产效率。我们很少运用“拿来主义”,留下对我们真正有用的;而通常是每出一个新框架就跟风去学习,或者一概置之不理。
古人有句话,“我知我不知”,现在也有个词,叫做“搜商”,就是这样一种对信息敏感,有搜索能力和甄别能力,知道自己所需的素养。