6

看到这个标题,很多人都要嗤之以鼻,作为开发人员看过的诸如如何提问的指南多了去了,难道还不知道怎么样提问?但是看看这些问题列表中的问题,还有现在国内一些中文问答网站中的提问,我不禁觉得国人的提问为何如此地不着边际,往往一个简单的问题,需要在评论一遍一遍的询问才能得出答案,大大地浪费了时间。

我们当初开发这个网站的目的就是节约大家的时间,问题解决就去干自己的事吧,有闲暇就来帮助别人解决问题,这是网络带给我们的好处。但我发现大多数人都过于沉迷闲聊式的提问,或者有时候是一个正经问题,非要以不正式的方式提出,让人摸不着头脑。

这个网站刚刚起步,我们不希望它变质。因此在这里提出这个问题跟大家一同讨论下提问的技术。注意,我没有把它说成一种艺术,因为大多数人还没有掌握这种基本技术。而怎样提出一个人让别人看得懂,而且有兴趣回答的问题,是我们在这里要讨论的主题。

拜托你直接贴代码(错误码)吧

开发者的文字表达能力普遍比较差,因为我们不擅长,但是为何不以我们擅长的程序语言来表达问题呢。很多人在问题里描述了半天,我们也搞不懂他到底要问什么。

而且很多人网上聊天习惯了,说话不分段,不换行,不打标点符号。看这样的问题是想让我们折寿吗?

因此可以看到很多问题后面往往都有一堆简短的评论,内容都是让提问者提供具体信息的。其实一开始就把这些贴出来更加节省大家的时间,只要掌握这三个原则

  1. 有错误的一定要把错误码都贴出来
  2. 产生错误的那一段程序代码也要一并提供,需要做错误重现
  3. 你自己的一些尝试,很重要,避免其他人浪费时间

还有一个更加实际的好处,各位想一想,我们程序出错了,在搜索引擎中会以什么作为关键字,我想大部分人都会直接用错误码。那么你把错误码在问题中贴出的好处就不用我说了,利人利己。

讨论性的问题一定要说出你自己的观点

这是一个基本的礼貌问题。比如你要询问"xxx技术前景如何" "怎样学习xxx"。你一定要把自己的情况,还有现阶段观点都说出来,要不然只写一个标题,然后恨不得在内容里就留个"RT"的,是没有人会理你的。没有人有义务向你提供自己的想法,特别是在这样一个社会,你只有用自己的想法去交换别人的想法。

开发人员都很忙,你懒别人会比你更懒。

尽量使用网站提供的功能

比如代码高亮功能,如果你把代码直接贴出来虽然也能看,但非常难看,而且让人没有看下去的欲望。而对你的问题做一个基本的排版,可以让其他人看起来更方便。

如果有些问题无法表述,请记住一图胜千言

使用tag准确地标记你的问题,可以让你的问题更快的被人关注,而且也更好地被搜索定位。

以上是我的一些观点,既然这是一个问题,那么欢迎大家来补充答案。

7个回答

1

我补充一个:请不要在这里企图让别人帮你做测试,有些测试自己就能做何必麻烦别人,一点动手能力都没有么?比如之前问mysql查询性能的问题,你问问比如“如何科学的做测试”这样的问题好很多。

看到这种问题我立马就关掉了。

1

1、不能轻易用Google找到解决方法的问题(至少换过很多关键词,翻过十页)
2、若是错误,需提供详细的环境信息、实现步骤、出错代码
3、开放性的,探索式的问题

1

有一篇非常好的文章<<提问的智慧>>值得每一个程序员借鉴。http://www.linuxforum.net/doc/smartq-...
问题本身深浅无所谓,但是提问者的水平一定要高,否者问答社区不会活跃。

0

林子大了,自然什么鸟都有了,网站本身能做些过滤之类的?
比如提问前,现显示搜索,看是否已有解决方案,问题内容预设一些框架内容,帮助用户完善问题.

0

有些怀疑社会化问答是不是一个伪命题或者伪方向——于问题本身有意义还是其他,但不得不回到问题本身。

0

如果问题已经解决,请提问者提供详细的解决方案和解决过程

0

我来补充一下:
提供问题的上下文环境:

什么操作系统
什么编程语言
用到了什么软件包,什么版本
...

撰写答案