zoukankan      html  css  js  c++  java
  • 《你的灯亮着吗?发现问题的真正所在》——读书笔记

    软件工程导论课上老师推荐的阅读书目之一,翻开这本书第一章,就被作者的幽默吸引了。作者直接利用序言没人看这个头痛的问题,写了一篇序言,顺带抛出问题,提出解决方法,让你一读此书,有冲击性的感触到:问题存在——问题定义——问题分析——问题解决——如何更好的解决。整本书用略显滑稽的小故事,幽默风趣的语言,带你步步走入“问题”的本质,虽然部分内容有些难懂,但就启发思想而言,实则是一本好书。

    ————————————————————————————————————————————————————————————————————————————

    第一篇的电梯问题,很有意思,告诉你了问题,告诉你了现状,就好像我们把握客户需求要给出软件解决方案一样。而我们,就可以通过问题描述里面的线索,设计问题解决方案。作者给出了整整9条的解决方案,方案之多,方案之可实施性,都是始料未及的,然而作者想要告诉我们的是,想完解决方法之后还要更进一步:谁有问题?问题是什么?问题如何分类?究竟是什么问题。

    谁有问题:(1)确定我们要取悦的对象(2)收集一些有用的线索这两点对于解决问题至关重要,一旦换了对象,解决方案就会迥然不同。

    问题是什么?先给要解决的问题下定义,而不是匆忙的去找答案,这样,你能思考的更全面。

    “当一派开始为另一派感到头痛的时候,我们知道问题找到它的解决办法了。印第安人对于这种解决问题的技巧有一个专门的说法,叫做‘穿上另一个人的软皮鞋走路’,尤其是当这双皮鞋是用湿的生牛皮做成,并且慢慢地在另一个人的脚上变干,直到最合脚为止。”

        事实上,我们不可能给自然的、日常的问题作出一个唯一的、只有一种结果的、完全清晰明确的定义。对于一个准问题解决者来说,他所面临的问题就是为别人解决他们的问题;而开始其工作的最好办法是从一开始考虑问题就想得比较全面,从而把自己由一个问题的解决者转变为一个问题们的解决者。

    为了实现这一内心深处的转变,准问题解决者应该在游戏一开始的时候,就努力去回答这个问题:谁有问题?然后,再对回答这一问题的每个不同的人群,问:您的问题的本质是什么?

    我们会在解决问题的途中因为各种各样的因素而模糊了要解决的问题,甚至脱离轨道,违背初衷。

    而你的问题到底是什么?在问题定义上:(1)不要把别人的解决方法误认为是问题的定义(2)如果你太轻易地解决了他们的问题,他们永远都不会相信你真的解决了他们的问题。

        道德考虑遇到有利可图的问题时往往很快就烟消云散了。关于真正解决问题的看法应该是:你永远都不能肯定你已经有了一个正确的定义,即使在问题已经解决之后。不要过早地下结论,但是也不要忽略你的第一印象。你永远也不能肯定你有了一个正确的定义,但是永远不要放弃寻求它的努力。

    那什么是真正的问题?

    每种解决方法都会带来新的问题。我们永远都不能消灭问题。问题、解决方法以及新的问题交织成一条无穷无尽的锁链。我们能期望的最好结果就是新的问题没有我们“解决了”的那个那么棘手。有时候,我们使问题变得不那么棘手,其实只是把问题放在“别人家的后院儿里”。这种技巧叫做转嫁问题,这种方法通常可以非常有效地解决问题,当你有意识地这么做并做得很细心谨慎的时候。但是新的问题常常是在无意识的情况下产生的。

    问题最难以处理的部分恰恰是去意识到它们的存在。最重要的规则之一是:如果在你对问题的理解中,你想不出至少3 样可能出错的东西,那么你并没有真正的理解这个问题。

    设计者的工作是为别人预先解决问题。同时也要求站在用户的角度思考问题。不相称的解决方法就是那种给要和使用这种解决办法的人们带来不协调的后果的解决方法。每一种新的观点都会带来新的不相称。

        作者又通过生活情景的例子启发我们,当你站在特定层面考虑问题的时候,这个问题会有更多对应的解答,对问题本质的更为微妙的感觉――一种只可意会不可言传的感觉。去体会: 当你在寻找问题定义的道路上疲倦地游荡时,不要忘记随时都回头看看,看看你是不是已经迷路了。

    除了要注意特定层面思考问题,同时也要注意问题表述的意思

    我们还要多问一句这是谁的问题?

    当别人能够很好地解决自己问题的时候,千万不要越俎代庖。如果某人能够解决这个问题,但是他本人却并不会遇到这一问题。

    解决涉及到大家共同利益的问题,恰恰不能“分而治之”。不但教了我们如何面对问题解决问题,更重要的是站在更高的位置,来解决真正的问题,甚至可以带领大家解决问题。

        书中特别善于对问题进行分类,也特别善于从各个角度提出解决问题的办法,这一点本身就很能够启发读者了。

    事实上有53.27% 的时间问题实际上是出在问题解决者身上的。每一个准问题解决者在开始严肃地处理任何问题之前都应该首先问的:我是否真的想要一个解决方法?

    尽管问题看起来很让人震惊,但我们已经看到了足够多的例子,这些例子中,一旦我们找到了“解决方法”,我们发现它根本就是不受欢迎的。或者答案是如此鸡毛蒜皮的东西,但并不是无意义。我们永远没有足够的时间来把它做好,但是我们总有足够的时间来重新做一遍。我们永远没有足够的时间来考虑我们是否真的需要它,但是我们总是有足够的时间来为之后悔。

    即使当我们真的想要这个解决方法时,我们还可能会忘记任何解决方法都不可避免的会有一些副作用,产生一些新的问题。

    当我们考虑问题的时候,我们习惯了的东西总是倾向于从思考中被忽略。有一部分原因是因为人类适应性的倾向:重复的刺激会导致反应越来越小。适应性允许我们忽略我们环境中恒久不变的东西,这样会使我们的生活简单化。当我们小小的世界中出现新事物的时候,它是最富刺激性的。在它保持了一小段时间,既不带来威胁也不带来机会之后,它变成了“环境”的一部分,或者说背景。最后,它被完全略去了:正如鱼总是最后一个看到水一样

    我们每天都在忙碌,却不知道自己在考虑什么?自己在做什么?或者说,所做究竟解决了什么问题?解决了谁的问题?是否真正解决了她的问题?或者说,所想究竟是基于什么需求?满足了谁的愿望?是否真正达到了人们的需要?然而这些,都不是这本书中能给你解决的问题,甚至可以说,这本书不能给你解决任何问题。但是你却可以从书中获得启发,最后形成自己解决问题的思路。真正的问题所在可能并不是您现在的所想,换个角度分析,或许您已经找到了问题的真谛。

    所谓“不识庐山真面目,只缘身在此山中”。如果我们还停留在不断地接受问题、不断地“发现问题”、不断地“解决问题”的怪圈中,我们永远无法知道自己“需要什么”和“正在干些什么”。面对变化多端的世界,面对错综复杂的问题,我们将一筹莫展。

    佛学有四句话:把自己当成别人;把别人当成自己;把别人当成别人;把自己当成自己。看待事物的最重要的其实是立场。所以我们动手去解决问题之前,要想想问题的来源;站在各个角度来看待面临的问题,把握真正所在;去尝试那个最能解决真正问题的方法,并且时刻保持警惕心;不要把某个问题的解决方法误认为是问题的定义,特别是这个解决方法是你自己所使用的;永远都不要肯定自己已经有了一个正确的定义,即使是在问题好像已经解决之后。

    其实啊,作者一直在轻声提醒我们:随着对问题的逐步深入,我们发现世界并不如原来所想那么确定。每一种解决方法都会带来新的问题;问题最难以处理的部分恰恰是去意识到它们的存在;在理解问题之前,至少要做好准备接受三种可能的出错情况;或许还可以改变问题的表述来获得不同的解决方法;当你沉迷于寻找问题定义和解决方法时,不要忘记随时都回头看看,看看自己是不是已经迷路了。

    计算机需要处理的问题就是一个有着明确的定义的 “0”和“1”的种种组合、运算。然而作为使用机器的我们,要是只思考“0”和“1”,那么,人类技术将毫无价值,甚至是危险的。

    人类不能离群索居,因为人类趋于利益,精于算计,所以当别人能够很好地解决自己问题的时候,千万不要越俎代庖;如果某人能够解决这个问题,但是他本人却并不会遇到这一问题时,那么你首先要做的就是让他也感受到这一问题;不管看上去如何,人们很少知道他们要什么,直到你给了他们所需要的东西;甚至,事实上,并没有多少人真的希望他们的问题被解决。

    最后,已书的封底做结:“如果说这是一册教科书,那一定是我太偏爱了故事;如果说这是一束小品文,那一定是我太沉迷于思考;如果说这是程序员解决问题的指南,那一定是我忽略了问题的普遍性;如果说这将改变你的生活,那一定是你洞察了其中的奥秘。”

     
    谢谢你!那么优秀,还来关注我。
  • 相关阅读:
    DataBindings 与 INotifyPropertyChanged 实现自动刷新 WinForm 界面
    EasyInvoice 使用教程
    下载网页通用类
    c#操作excel的一些记录
    sql数据库基础知识整理,常用函数及常用语法
    动态行转列 pivot实现
    EFCodeFirst 数据迁移问题~
    asp.net 翻页时用ViewState保存上一页checkbox勾选的值
    参数化拼接in查询条件,个人备份
    retry
  • 原文地址:https://www.cnblogs.com/jisijie/p/5030625.html
Copyright © 2011-2022 走看看