【黑客之道】序 - #2 真正的问题解决者

in #steempress6 years ago (edited)

黑客,是一种创造者;与其他的创造者或创作者类似(如:作家、作曲家、画家、雕塑家、建筑师等),具备目的性,也即解决某一个特定的问题。例如《战争与和平》为描绘社会风貌的恢弘史诗,《命运交响曲》赞美与命运的斗争,“哀悼基督”为圣彼得大教堂而塑造,“长城”则为抵御北方游牧民族所建。

解决问题(Problem Solving),是黑客之道的核心,也是技术和艺术的核心。甚至对日常生活也是如此,掌握了解决问题的科学和艺术,就能破开人生的重重困境,人生的意义或许也能够彰显。

于是,黑客之道,是这样一种思想与智慧:如何用正确的方法,解决真正的问题

1. 人生意义与解决问题(Problem Solving)

(1)人生的意义

人生的意义是什么?这总不易回答,由于没有标准答案,人生也就变得多彩、有了极大的自由;但自由和纷繁,有时也意味着茫然与无措。关于人生意义,我们可以看到多种解释,以下为几类:

  1. 享乐:有人认为人生的意义在于这浩大的红尘之中,名利权情、孜孜以求,“黄金屋”、“颜如玉”、“千钟粟”,不一而足;
  2. 自赋:有人认为人生的意义是可以自我赋予的、不受拘束的,意义可以有、也可以没有,天下无我、何来山水;
  3. 证道:有人认为人生的意义乃是维护世间正法、或探求智慧与真理、或推动人类发展,此乃天道所授,时不我待、舍身证法;
  4. 解脱:有人认为人生的意义在于解脱于俗尘之外,别有洞天、渡人渡己。

“儒”、“法”、“道”、“墨”对此的看法甚为不同:“儒法”重“治世”、“道”尚“自然”、“墨”主“兼爱”(略近似于“博爱”,但并不相同)。

(2)结果还是过程

就世俗而言,我们可以从结果和过程的角度,获得两个方面的人生意义:

  1. 结果论:以解决问题的角度来看,即此人的一生解决了何种问题或挑战。譬如孔子开创儒家学派以救治乱世,伽利略奠基近代科学的研究方法,贝多芬之《命运》《合唱》交响曲,这些都为人生丰富的“遗产”,解决了极其重要的问题、建立了不朽的作品。对于普通人,则也需要解决生存的诸多问题,学业、职业、爱情、婚姻、家庭、教育、事业、人生使命等等,理性应对和解决这些问题,人生也可圆满。
  2. 过程论:结果论或目的论是一种理性,政治、经济、科学、技术都有明确的目的和精确的理性。但生活中,文化、交往、游戏、独处等行为,并不总以解决问题为明确的目的;哈贝马斯认为,我们的“生活世界”被货币和权力所支配,正在丧失生活的意义和自由,这是对结果论、功利论的反驳。以经历的角度来看,人在时间和空间中畅游,可以自赋结果、也可以没有结果;体验人生的旅程本身,也可以是一种人生目的。

不可分割地,我们的生命既有解决问题的部分、也有体验过程的部分。体验过程的价值因人而异,标准较为个人化、本土化、时代化;所谓体验,可以是解决问题过程中的体验,也可以是无目的之体验,但都是生命的旅行。解决问题,可以是别人的问题、也可以是自己的问题,可以是重要的问题、也可以是琐碎的问题,可以解决地彻底、也可以解决地拙劣,由此解决问题的价值便有一些差异。

(3)解决人生中的问题

人的一生的不同阶段面临不同的问题,例如学习、思考、职业、婚姻、家庭、教育等,对于这些问题缺乏有效的解决方案,那么人生之路也会遇到诸多坎坷;设计这些解决方案是人生旅途的重要组成部分。

对于黑客而言,解决问题的大小、多少、好坏,可以衡量他的创作的社会价值。有些“匠”才,精通技艺、技法和技术,但对问题的选择与解决策略缺乏思考和探究,因此无法成为“将”才,以及真正的问题解决者

有人认为:“选择比努力更重要”。选择是决策智慧,努力是执行能力;毫无疑问,两者都是不可或缺的。在解决问题的过程中,选择表现为选取正确的、有价值、有机会的问题,努力表现为有效、高质量、快速地解决问题。选择是战略,执行是战术。

How to Solve It by George Polya

from Wikipedia -- How to Solve It | CC BY-SA 2.0

2. 言志:解决什么问题(What & Why)

选择问题”,不论对于研究者、工程师,还是作家、创业者,都是最重要的课题之一。从小的方面看包括发现挑战或危机、找到切入点,从大的方面则是看到时代和文明的趋势、从事最重要的事业。选择问题,是决策过程,并且可以提高到战略高度来回答。

所以,“问题”的选择或识别,并不仅是说在某一个特定的工程或产品中,发现具体的问题并设计解决方案,而是从价值创造的角度而言,在宇宙、世界和社会的庞大时空中,敏锐的识别要设计哪种系统、实现哪种技术突破,这是极其具有挑战的。比如,对牛顿而言,专注于对圣经的研究,还是尝试用数学原理解决自然哲学遇到的挑战,便是重要的问题选择;对问题的嗅觉与品位(自然哲学、天文学、物理学)和解决问题的实力(数学能力、微积分、实验设计)映证了天才之为天才。

(1)选择问题,需要格局、志向与智慧,不仅仅知道是什么,也知道为什么。

当代的很多中国程序员常自称为“码农”,这有自嘲幽默的成分、也可能有被贬损的股份。很多国家向来重“农”的(“士农工商”),未必就是贬称,但值得警惕的可能是“码农”的自我定位的局限。自称为“码农”的较多是企业或组织内的工程师,他们按照产品经理的设计来实现代码,是“实现者”(implementor)而非“思想者”,这带来诸多隐患。失去了思考、设计、识别问题的能力,犹如人失去了大脑,只有手脚;久而久之,人被技术所用,而非运用技术

黑客则不同,黑客以创造技术、解决问题为基本工作,不局限于组织和企业内的日常任务,有开阔的视野和坚实的解决问题的能力。顶级黑客解决问题和思考的维度,常常直击产业和技术发展的关键节点。《浪潮之巅》作者吴军根据物理学家朗道对物理学行业的分级,提出了工程师的分级方法如下:

  • 第五级:能独立解决问题,完成工程工作。
  • 第四级:能指导和带领其他人一同完成更有影响力的工作。
  • 第三级:能独立设计和实现产品并且在市场上获得成功。
  • 第二级:能设计和实现别人不能做出的产品,也就是说他的作用很难取代。
  • 第一级:开创一个产业。

三~五级分别是创业者或产品负责人、领导者、内部工程师,第二级是卓越的创造者(Jeff Dean、Donald Knuth),第一级是开先河者(爱迪生、福特、贝尔)。黑客的目标通常在第一到第三级,自称为码农的工程师可能多来自第四和第五级。这是技术维度的差异,也是将才与匠才的差异。也存在第零级的黑客,有如孔子、老子、伽利略、牛顿等,借助理性、科学的精神,开创了新的轴心时代,他们创造文明。

普通人囿于谋身、自利等小问题,卓越者“执拗”于开创、忧国等大问题;虽人人平等,但真正擅于利他、勇于助人者,总是少数。Richard Stallman等开源时代的开创者们,执着于自由软件运动,与商业世界决裂,表现出的是为世界谋利益的宽阔胸怀与远大志向,其功甚伟;没有这种预见力,也就没有Linux等开源系统,也就没有今天的互联网世界。

(2)选择问题,除了深刻理解其价值,还要有坚毅的勇气、恒心与忍耐。

林语堂在《苏东坡传》中对王安石颇多贬损,梁启超在《王荆公》中对王安石敬赞之至。以文人的视角(林语堂),苏东坡豪迈自由,引致了“乌台诗案”的王安石则被描绘为奸相;以政治家的视角(梁启超),王安石舍身为国,为常人所不敢为。林、梁格局不同,所作评论便有差异;苏、王或许都是一时“王佐”,但王安石以《上仁宗皇帝言事书》直陈天下之危,而后又能辅神宗变法,这又是苏轼所未能及。虽变法成败褒贬不一,但如果没有王荆公的远见、心力与勇气,则绝无可能迎天下之难而上。

这说的是治国,对于黑客也是同理。做大量的琐碎的选择,不如坚守一个重要的选择。(投资的智慧与此类似)

(3)选择问题,更需要品味,知其机要、有所不为。

这品味,包括了对时代、社会和技术的洞察,对私利的淡然,对“小聪明”的无视,以及“勿以恶小而为之”(Don't be evil)。这品味,不仅仅是技术的,也是精神的;不仅仅是关于“剑”的,也是关乎“心”的。

有人由于经济、家庭等约束,自认为无从选择。主观或客观的约束总是存在,突破约束、克服限制,也需要分析、取舍、筛选问题的品味和解决问题的能力。

故欲成一流之工程师,必有一流之抱负、一流之见识、一流之精神、一流之思想,以道御术、以心御器,选择正确的问题而解答之;善恶高低,由此可知。

3. 问道:如何解决问题(How)

老子说:“千里之行,始于足下。” 解决问题能力是一种技术,是一个富有逻辑性的思维和实践过程。

从劳动力市场来看,公司招聘的是能解决特定问题的人;对于商品市场来看,消费者购买的是能满足个人或者组织需要的产品(固化了的解决问题能力)。劳动力和商品代表的能力是目的明确的,这从招聘广告和产品广告就能看出,但种能力在社会分工这种“分析”、“分解”的行为模式下,呈现出支离破碎的状态,他们背后的共同性和“综合”特性只有少数人掌握。这也造成了大部分人解决“小问题”、“局部问题”,少部分人解决“大问题”、“整体问题”的局面。

如何才能真正掌握解决问题的核心技术,下面简要叙述。

(1)解决问题的核心能力是思想

就较广义的黑客而言(工程师、发明家等),其解决问题的核心能力看似是技术的运用能力;而对于一般公众而言,狭义的黑客(计算机技术专家、程序员)的核心能力似乎是写代码。这两种看法都存在偏见。

或许对于“第五级工程师”(见上文)来说,只要能将产品意图翻译为程序语言就足够了。但好比我们不会说一个人擅长“写作”是他认识多少汉字、能用几种句型,而最关键的是他具有什么思想或叙事、如何表述;我们也不会认为会使用程序语言就代表能用程序解决问题了,如果“码农”不会思考,那和机器也并没有差别。

解决问题,就其本身而言,需要的是对问题的理解、分析、溯源、设计、执行、检验等过程;书写、作画、代码,可能只属于执行这一个步骤。同一个问题,不同人的处理方式可能完全不同,这在程序设计中随处可见:

  1. 理解错误必然导致白费功夫;
  2. 分析不透彻、找不到根本原因,或解决方案草率、短视,容易产生dirty & quick fix;
  3. 设计不考虑长远变化或灵活性,容易产生较高的维护成本;
  4. 缺少检验必然带来质量、安全等隐患。

就此而言,解决问题需要的是综合的逻辑思维能力、大局观与细节处理的能力,而不是某一个专门的技巧或“锤子”。将问题放置到当时的情景中考察,并结合整体的系统或生态进行判断,以及判断是否可以不解决该问题,都依赖于清晰严谨的理性

要解决大问题,或者设计独一无二的解决方案,需要对根本问题的深度思考(如使用者的人性考察、场景的深入分析、技术发展的脉络等),需要跨学科、多模型的综合分析和思维能力,需要领导力和决策能力,需要对资源、技术、人力的组织和协调能力

问题的维度越高或者深度越深,对思想能力和综合能力的要求也就越高。解决复杂度高的问题,多强调协作与分工,如果主导者的思想不深入、不精确,那么整盘解决方案的设计和调度必然混乱,获取成功将极具挑战。这与古人对领导者“内圣外王”或“哲人王”的政治理想传统是一致的。

随着分工细化的加剧和社会复杂化的发展,对“真正的问题解决者”掌握智慧与思想也提出了越来越高的要求。实际上,学习能力是解决问题能力的前提。“问渠那得清如许,为有源头活水来”;解决问题能力始终“清如许”,思想与技巧能够保持卓越,是因为有学习的“源头活水”作为输入。

(2)解决问题的内在结构

内在结构的含义是“一种解决方案”或“一种技术”,通常会依赖于其他技术的运用或创造,而形成新的技术或内在结构。常规的解决问题过程都是用已有的方案或技术来解决特定问题,技术对于很多人来说只是“黑盒”,很少需要“重新发明轮子”。但重视内在结构,同时也是对内部或根本方法的反省,是极为重要的,我们来看几个历史上的例子。

  1. 伽利略通过自制天文望远镜,观测到了凹凸不平的月球表面、及木星的四颗卫星、金星的盈亏现象,用事实打破了天地的界限、支持了“日心说”、并进一步提出了惯性理论,解释了潮汐现象。这是通过构建新的工具,以解决眼前问题的例子。新的工具,又继续推动了更多问题的进展。
  2. 为了实现搜索引擎,Google在内部实现了GFS、MapReduce、BigTable等基础设施(infrastructure)并公开发表成果,直接推动了之后的大数据开源Hadoop技术等的出现。这是内部的基础设施成为创新的基础,从而推动技术跨越式发展的例子。Amazon的AWS的出现和商业化也是类似的例子。

解决问题的技术是层层相依的。新的技术推动更多技术的发展,同时也依赖更多过去的技术。明白这一点对于黑客有非常重要的价值,因为解决问题的过程往往也伴随着技术的进步,忽视了这种“副产品”,既有可能导致资源的浪费,更可能错过潜在的机会。

(3)问题与解法的进化路线

问题是源源不断的,来自于外部环境的不断变化(社会、时代、市场等),也来自于解决方案的驱动。一个新的解决方案,通常也并非完美的,或者有其适用环境,所以也经常会带来新的问题。比如,iPhone也开拓了一个之前平不存在的移动信息空间,使得大量的新的技术和产品可以被发明和应用,极大地刺激了新的解决方案的出现,如共享单车,同时又带来了新的问题,如隐私、安全和社会治理问题。

旧问题的解决,并非一劳永逸,不断涌现新的解决方案,以替代旧的技术方案。如,交通,从牛马、马车、火车、汽车、飞机、航天飞机,到自动驾驶,这种变化依然没有停止。对于“空间位移”这种近乎永恒的需求,依然会不断有新的解决方案被提出和实现。

技术的发展动力,高度依赖于其背后的现象,尤其是物理学本质。工业革命就是发端于科学革命,每一次系统性的物理发现,都将带来颠覆性的技术发展。(相对论和量子力学的突破,至今我们仍然没有消化完毕)化学和生物学的进展,又在21世纪带来纳米技术和基因工程的飞跃。这种被认为是“指数型”技术爆炸的趋势,使得我们的问题域和解法域的进一步扩展,而激发出越来越多的可能性。

从结构上把握问题与解法的进化路径,对于设计真正的解决方案,是极为关键的。

以上,我们探讨了解决问题(Problem Solving)的基本问题。在之后的篇章中,随着问题的深入,我们可以看到更多具体的解读与分析。

下一篇预告:【黑客之道】序 - #3:技术之美

参考文献



Posted from my blog with SteemPress : https://robertyan.000webhostapp.com/2019/01/%e3%80%90%e9%bb%91%e5%ae%a2%e4%b9%8b%e9%81%93%e3%80%91%e5%ba%8f-2-%e7%9c%9f%e6%ad%a3%e7%9a%84%e9%97%ae%e9%a2%98%e8%a7%a3%e5%86%b3%e8%80%85
Sort:  





This post has been voted on by the SteemSTEM curation team and voting trail in collaboration with @utopian-io and @curie.


If you appreciate the work we are doing then consider voting all three projects for witness by selecting stem.witness, utopian-io and curie!


For additional information please join us on the SteemSTEM discord and to get to know the rest of the community!

Hi @robertyan!

Your post was upvoted by Utopian.io in cooperation with @steemstem - supporting knowledge, innovation and technological advancement on the Steem Blockchain.

Contribute to Open Source with utopian.io

Learn how to contribute on our website and join the new open source economy.

Want to chat? Join the Utopian Community on Discord https://discord.gg/h52nFrV

Coin Marketplace

STEEM 0.19
TRX 0.18
JST 0.035
BTC 90648.89
ETH 3205.71
USDT 1.00
SBD 2.81