0.2谁应该阅读本书
每个人的一生都在获取知识。有些知识来自于被动接受,有些知识来自于主动学习。知识有不同的类型,而学习知识又有不同的方法。显然,本书也会提供一些知识。在推荐谁应该阅读本书之前,了解本书提供的知识类型是很有用的。同时,在获取之前,对于知识本身进行一些思考也有助于学习效率的提升。很多领域内的行家都善于此道。
台湾人李敖就是一位获取知识的大师, 我非常欣赏他的学习方法。来看看他获取知识的特点:
- 目标简单、稳定
- 围绕目标思考和行动(持续不断地收集历史资料)
- 享受内心自由乐趣,不信权威
- 经过特训的大脑,善于知识归类和检索
他一生在阐述一个论题,论据的丰富程度达到人生的极限。你可以从主观出发不赞同他的思想,但是无法对抗那些论据。
李敖是一位历史学家,他所学习的知识类型与软件行业不同。事实上,即便在软件行业内部,知识也有不同的类型。知识类型的不同,决定了学习方法的不同,最终对人的能力和培养提出不同的要求。
下表列出了软件开发中各种工作类型的要求。所有的定义都是非充分性的和非全面性的,只是表达出一些偏重。关注这些偏重对于最终的目标实现是有意义的。
工作类型 | 知识类型 | 能力及培养 |
需求获取与分析 | 说明型 | 理解能力和归纳能力 |
软件设计 | 创造型 | 想象能力和创造能力 |
软件实现 | 逻辑型 | 抽象能力和探索能力 |
项目管理 | 情感型 | 沟通能力和执行能力 |
软件决策 |
|
|
在后续的章节中,读者可以体会到这些定义的思路。有很多的文字会解释这些能力在软件开发中应该是怎样的以及为什么有助于软件开发工作。本书提供的知识类型与上表中的知识类型有千丝万缕的联系,但是本质上不同于其中的任何一项。相较于务实的软件开发工作,它更接近于虚。我把本书提供的知识类型称作为思想型。当你追溯一切问题的根源时,哲学总是追溯的源头。而当你从事软件开发工作,当你面对软件开发中的迷惘和失败时,你也许会在追溯的过程中需要用到本书中提供的知识。
因此,本书的读者是那些陷入迷惘或存在困惑的软件开发者。他们已经有了一定的软件开发技能,但是还没有或很少有成功的软件开发经历;他们对于软件开发工作存在着抱怨,有一些模糊的或零星的改革想法;他们热爱软件开发工作,但是缺少工作中的乐趣;他们希望有一个明确的方向,一段可以借鉴的经历,一个行之有效的方法和一种超越以往的境界。
遗憾的是,世上不存在可以供你直达目标的操作手册。每个人实现目标的方式都是不同的。除了最后一步的领悟之外,有效的信息收集和经验积累是必须的基础。这里强调的词是有效的。什么样的信息是有效的呢?
- 简洁明确的思想表述
- 层次清晰的分类信息
- 令人信服的论证过程
小记:
前段时间确定的出版单位一直没有来联系。重新考虑了。。。