XY问题(XY Problem)

By | 03月09日
Advertisement

编程亦如人生,既然他是我个人生活的一部分,则便是人生的一部分。

今天突然听师傅说“你让我遇到了‘XY问题(XY problem)’”。什么意思?

对于“XY问题”,不同的人有不同的解释:

你想做X,但你认为Y是实现X最好的方法。你不问关于X的事,反而问起Y的事。

— 来自 Re: sequencial file naming by Abigail

你尝试去做X,但你想起了Y方案。于是,你开始问关于Y方案的事,完全不提X。问题是,也许会有更好的方案,但如果你不描述X是什么,我们根本无法出谋划策。
— 来自 Re: How do I keep the command line from eating the backslashes? by revdiablo

有些人问如何去做Y,但他们实际是想做X。他们之所以问如何做Y,因为他们相信Y是实现X最好的方法。人们用各种的“试试这个”来给予帮助,而结果往往是“这不行,因为….”。这给我们提示,依赖环境的不同,你的问题可能会有其它更好的方案。
— 来自 Re: Re: Re: Re: regex to validate e-mail addresses and phone numbers by Limbic~Region

在不理解更大的问题(上下文)X的情况下,去回答问题Y,往往完全无助于解决问题X。
— 来自
XY问题(XY Problem)

也叫做“过早下结论”:有疑问的人希望能解决一些阐述的并不清楚的问题X,他们断定Y是解决方案的一个要素,于是他们就询问如何实现Y。
— from [email protected] by Alan J. Flavell

XY问题是指,当你需要做X时,你认为可以用Y来实现X,于是你问如何做Y,而你实际应该做的是说明你的X问题是什么。也许会有一个比Y更好的Z解决方案,但如果X没有被说出来,没有人能提出更好的建议。
— 来自 [email protected] by Tad McClellan

当有人来问如何做一些傻事时,我真的不知道如何去做。我只能照实回答,说我可不要告诉别人如何做傻事…..

但是,一旦我这样做了,人们就会蹦到我面前自作聪明。这种事情经常发生。(“别呀,帮帮这个可怜的人吧,如果你知道他们真的需要知道如何做,你干嘛不告诉他们呢?”)

另一方面,我可以从另一个层面上回答他们,给他们一个更好的方案,但这种执教也许会让他们脸上不好看。如果他们接受倒好,如果不接受,你会很伤心看到自己的努力和好建议被忽略。同样,人们会蹦到你面前指责你没有直接回答他们的问题。(“谁要你告诉他该怎么做了,你只要回答他的问题就行了。”)

我想这种两种回答方式生活中都经常会有。但也许没有一种回答会得到好结果。
— 来自 <[email protected]> by MJD

MJD很早之前也对这个主题发表过一篇讽刺文章,这篇文章成了互联网上的经典:回复:在新闻组里我从来没有得到过问题的答案。

这些年它已经被更新了数次;有个版本演变成了著名的”Retardo!”语录。

最后一个版本在这个网站上:技巧:如何提出好问题。

Similar Posts:

  • HDU 4143 A Simple Problem

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4143 简单翻译就是找到最小的一个数x,输入一个数n,能找到一个数y,满足y^2 = n +x^2.题目要求n<=10^9,用两层循环肯定超时. 思想:分解因子:n=(x+y)*(x-y),令(x-y)=i;所以n/i=(x+y);(n/i-i)/2=x; 陷阱:x要大于0,当n是完全平方数时要注意,这里坑了好多次. 代码: #include<stdio.h> #include<math

  • 【BZOJ】1675: [Usaco2005 Feb]Rigging the Bovine Election 竞选划区(暴力dfs+set判重)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1675 一开始我写了个枚举7个点....... 但是貌似... 写挫了. 然后我就写dfs.. 判重好难写啊. .... 本来用hash的.. 但是对拍一直wa.. 所以干脆用set.. 然后将数值调大.. 然后就过了.. 然后bzoj数据弱.. 自己对拍还是hash有冲突的.. #include <cstdio> #include <cstring> #include <cma

  • Hacker&#39;s guide to Neural Networks

    Hacker's guide to Neural Networks Andrej Karpathy blog About Hacker's guide to Neural Networks Hacker's guide to Neural Networks Hi there, I'm a CS PhD student at Stanford. I've worked on Deep Learning for a few years as part of my research and among

  • Intervals(差分约束)

    http://poj.org/problem?id=1201 题意:给出N个整数区间[ai,bi],并且给出一个约束ci,( 1<= ci <= bi-ai+1),使得数组Z在区间[ai,bj]的个数>= ci个,求出数组Z的最小长度. 思路:建立差分约束系统.因为这里要求数组长度的最小值,要变为 x-y>=k的标准形式. 设数组 s[j] 表示数组 Z 区间[0,j]里包含的元素个数.所以 s[bi+1] - s[ai] >= ci,注意是 j+1, 隐含条件 0 <

  • CodingTrip - 携程编程大赛 (预赛第二场)第三题

    位图像素的颜色 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submission(s) : 1 Accepted Submission(s) : 1 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 有一个在位图上画出矩形程序,一开始位图都被初始化为白色(RGB颜色表示

  • How to Register User Controls and Custom Controls in Web.config

    Tip/Trick: How to Register User Controls and Custom Controls in Web.config I've been including this technique in my ASP.NET Tips/Tricks talks the last year, but given how many people are always surprised by its existence I thought it was worth a dedi

  • B - 娜娜梦游仙境系列——跳远女王

    B - 娜娜梦游仙境系列--跳远女王 Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) Submit Status Problem Description 娜娜觉得钢琴很无趣了,就抛弃了钢琴,继续往前走,前面是一片湖,娜娜想到湖的对岸,可惜娜娜找了好久都没找到小桥和小船,娜娜也发现自己不是神仙,不能像八仙过海一样.正当娜娜发愁的时候,娜娜发现湖上面有一些石头!娜娜灵机一动,发现可以沿着

  • FAFU-1008 魔棍 线段树成断更新

    http://acm.fafu.edu.cn/problem.php?id=1008 #include "stdio.h" #include "string.h" const int maxn = 100005; int n,q; int x,y,len; int tree[maxn<<2]; void buildtree( int ld,int rd,int t ) { tree[t] = 10; if( ld == rd ) return; int

  • perlreftut - Mark&#039;s very short tutorial about references

    DESCRIPTION One of the most important new features in Perl 5 was the capability to manage complicated data structures like multidimensional arrays and nested hashes. To enable these, Perl 5 introduced a feature called `references', and using referenc

  • zzu数学 实验十一最速降线

    zzu数学 实验十一最速降线 意大利科学家伽利略在1630年提出一个分析学的基本问题──"一个质点在重力作用下,从一个给定点到不在它垂直下方的另一点,如果不计摩擦力,问沿着什么曲线滑下所需时间最短".他说这曲线是圆,可是这是一个错误的答案. 瑞士数学家约翰.伯努利在1696年再提出这个最速降线的问题(problem of brachistochrone),征求解答.次年已有多位数学家得到正确答案,其中包括牛顿.莱布尼兹.洛必达和伯努利家族的成员. 在一个斜面上,摆两条轨道,一条是直线,

Tags: