Medium高赞系列,如何正确的在Stack Overflow提问
在我们写程序的时候,经常会遇到各色各样的问题,在国内,小伙伴们经常去知乎、CSDN、博客园、思否、安卓巴士等地方提问并获得答案。
这些地方汇集了很多优秀的、爱分享的国内资源。小编比较自豪的一件事情就是:当初学习dubbo期间,因为一个数据关闭错误一直找不到正确的解决方式,就顺手把自己解决问题的步骤写下,并附上参考资料中的方法,算是把那类问题做了一个增强版的总结,没想过几个月后,有位粉丝专门找上来感谢我,帮他解决了疑惑。
技术人,就是那么容易得到满足。得到别人的一句谢谢,开心的像个傻瓜。前行路上,爱分享、把资源提供给更多的人,是最开心和愉快的事情。
现在是移动互联网的时代,倘若我们能链接到更多的人,倘若我们来连接的不仅仅有国内,还有国外,那岂不是更好?那么如何在国外得到自己想要的答案?我们不妨去Stack Overflow这个平台去试试,优秀的问答平台,你们懂的。
但是提问也是一门艺术,所以赶紧来看看他们的总结,助你更好地在平台上提问。
原文地址:https://medium.com/better-programming/how-to-ask-a-question-that-gets-answered-on-stack-overflow-45f87f1a2fef
作者:Nabil Nalakath
时间:2019.11.12
当有人告诉我他们在开发中遇到的问题时,在大多数情况下,我的直接答复是:“您在Stack Overflow上发现了什么?”
但是,很多开发者会给出奇怪的答案,例如:“我不知道如何使用它,我因提出较差的问题而被禁止,人们总是不赞成我的帖子,或者给我有关如何提问的链接,”等。
Stack Overflow是互联网上最有用,访问最多的网站之一,但它也是互联网上最残酷的平台之一。
如果您犯了一个错误或提出了一个愚蠢的问题,人们不会理财你,这就是该平台自成立以来一直保持其标准的方式。因此,别指望有什么收获。
相反,我们需要习惯它并改变提问的方式。够了,让我们来看看您在提问时要注意哪些重要事项。
发布问题时要注意的事项
标题要具体(不要在标题中张贴整个问题或广泛的问题)
使用正确的标签(这对于快速获得答案非常重要)
张贴代码的相关部分,并在问题编辑器中使用代码标签将其格式化为代码(如果代码不是整齐的,大多数人都不会去回答)
如果您要解释运行时出现的问题,请尝试发布屏幕截图
如果有日志的话,发布正确的错误日志(特别是在应用崩溃的情况下)
如果您的部分输出没有错误,并且想要对输出进行特定的修改,而且您似乎无法弄清楚如何,将问题分为两部分,在问题中清楚提及:
- 你现在有什么
- 你需要达到的目标
如果与UI相关,请发布线框屏幕截图,如果不可用,请尝试在现有的UI屏幕截图中使用诸如Paint之类的简单工具标记所需的内容或您要进行的更改
如果您认为版本代码可能与解决问题有关,请发布版本代码(例如:果问题仅在旧版本的PHP或Android中发生,而在新版本中则没有)
发布时要避免的错误
切勿发布代码中包含品牌名称或公司名称的部分
裁剪屏幕截图以仅显示相关内容
如果代码包含部分内容,例如键或密码(例如PHP邮件程序代码中的电子邮件密码),请始终用****或特殊字符替换密码字段
不要发布自己创建的特殊算法或应用引擎代码,除非您不介意其他人使用它或将其开源
坏问题和好问题
让我们看一下146票赞成的这篇文章:
地址:https://stackoverflow.com/questions/3905734/how-to-send-100-000-emails-weekly?source=post_page-----45f87f1a2fef----------------------
如您在本示例中看到的,已发布的问题不是特定问题。如果您要这样的教程类型答案,那么Stack Overflow并不是一个好地方。
以该示例为例,在这种情况下,用户要求每周使用PHP向100,000个用户发送一封电子邮件。但问题并没有显示用户方面的任何努力。
到目前为止,还没有提及用户已经尝试了什么或他们面临的任何特定错误。这是不能回答问题的完美范例。
另外,这里有一些很好的示例问题供您参考。
地址:https://stackoverflow.com/questions/11227809/why-is-processing-a-sorted-array-faster-than-processing-an-unsorted-array?source=post_page-----45f87f1a2fef----------------------
地址:https://stackoverflow.com/questions/51096796/how-to-enable-horizontal-scrolling-for-chart-js-in-ionic?source=post_page-----45f87f1a2fef----------------------
地址:https://stackoverflow.com/questions/47923524/app-is-crashing-on-some-devices-android-studio-shows-out-of-memory-exception-er?source=post_page-----45f87f1a2fef----------------------
如您所见,即使有人不回答,如果您以适当的方式提出问题,您仍然会获得赞成票
致谢
最后,如果您得到查询的答案并且符合您的要求,请将其标记为可接受的答案以关闭问题。
这将帮助发布答案的人获得声誉,并鼓励他们帮助更多人。
毕竟,平台的存在仅是因为这些乐于助人的无私奉献者愿意为您提供帮助,因此这是您为他们所做的最少的事情。
结尾
提问是一门艺术,小编也经常遇到很多提问看不懂、看不明白的情况。无论是在团队里还是平时和大家交流的过程中,多多少少会遇到互相不理解的情况,所以,做技术的我们实在是太难了,哈哈。
当然,如果学会了一些必要的技巧,提问对我们来说还是just so so,毕竟共同语言这么多,虽然问题形形色色,但是茫茫人海,总会有人遇到你遇到的问题,总存在能解决问题的方法。
这是一篇很好的提问的范例,不仅仅是在Stack Overflow上,包括我们自己国内的平台、自己项目组、都可以用类似的技巧来提问,能大大节省沟通成本,获得更高效率。
本文由博客一文多发平台 OpenWrite 发布!
Medium高赞系列,如何正确的在Stack Overflow提问的更多相关文章
- java高并发系列 - 第6天:线程的基本操作
新建线程 新建线程很简单.只需要使用new关键字创建一个线程对象,然后调用它的start()启动线程即可. Thread thread1 = new Thread1(); t1.start(); 那么 ...
- java高并发系列 - 第15天:JUC中的Semaphore,最简单的限流工具类,必备技能
这是java高并发系列第15篇文章 Semaphore(信号量)为多线程协作提供了更为强大的控制方法,前面的文章中我们学了synchronized和重入锁ReentrantLock,这2种锁一次都只能 ...
- java高并发系列 - 第21天:java中的CAS操作,java并发的基石
这是java高并发系列第21篇文章. 本文主要内容 从网站计数器实现中一步步引出CAS操作 介绍java中的CAS及CAS可能存在的问题 悲观锁和乐观锁的一些介绍及数据库乐观锁的一个常见示例 使用ja ...
- java高并发系列 - 第22天:java中底层工具类Unsafe,高手必须要了解
这是java高并发系列第22篇文章,文章基于jdk1.8环境. 本文主要内容 基本介绍. 通过反射获取Unsafe实例 Unsafe中的CAS操作 Unsafe中原子操作相关方法介绍 Unsafe中线 ...
- java高并发系列 - 第23天:JUC中原子类,一篇就够了
这是java高并发系列第23篇文章,环境:jdk1.8. 本文主要内容 JUC中的原子类介绍 介绍基本类型原子类 介绍数组类型原子类 介绍引用类型原子类 介绍对象属性修改相关原子类 预备知识 JUC中 ...
- java高并发系列 - 第4天:JMM相关的一些概念
JMM(java内存模型),由于并发程序要比串行程序复杂很多,其中一个重要原因是并发程序中数据访问一致性和安全性将会受到严重挑战.如何保证一个线程可以看到正确的数据呢?这个问题看起来很白痴.对于串行程 ...
- Java高并发系列——检视阅读
Java高并发系列--检视阅读 参考 java高并发系列 liaoxuefeng Java教程 CompletableFuture AQS原理没讲,需要找资料补充. JUC中常见的集合原来没讲,比如C ...
- 年薪60W的Android程序员究竟多累、多苦?一条高赞评论扎了无数人的心
为啥经常听到程序员朋友说自己太辛苦了.太累了,其实原因很简单:干活苦.竞争大.技术致富难. 干活苦: 有新闻说晚上十点某领导在微信群要求下属在十分钟内回复,一员工因休息早而没及时回复被裁了. 对于程序 ...
- elixir 高可用系列 - 目录
1. elixir 高可用系列(一) Agent 2. elixir 高可用系列(二) GenServer 3. elixir 高可用系列(三) GenEvent 4. elixir 高可用系列(四) ...
随机推荐
- deferred对象和promise对象(二)---deferred对象
早上醒来,继续讨论deferred对象和primise对象. deferred对象的的方法: 1.$.Deferred()-----生成一个deferred对象 2.deferred.done()-- ...
- 算法学习之剑指offer(七)
题目1 题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出P% ...
- RIDE的Edit界面
有四种类型的Edit界面(注:测试套件主要是存放测试案例,资源文件主要是存放用户关键字) 1.测试套件(file类型)的Edit界面 首先展开Setting: 对右侧红框按钮简单说明: Library ...
- (一)如何理解java面向对象编程
哲学中,事物总是螺旋式上升,波浪式前进.因而编程也逐渐向人类更容易理解的方向前进,多年来人们苦苦追求的编程境界 : 高扩展性(extensibility),高复用性(reuseable).java语言 ...
- ESP8266开发之旅 应用篇① 局域网应用 ——炫酷RGB彩灯
1.前言 这一篇,博主将教大家怎么去实现一个WiFi RGB彩灯. 先来一个博主已经实现功能的图片,如下: 当然,博主也拍了运行视频,请点击 传输门. 1.1 知识储备 ...
- AS报错:lambda expressions are not supported at this language level
AS报错:lambda expressions are not supported at this language level 解决方法 打开打开 File --> Project Stuct ...
- chrome安装json美化软件 JSONView
安装效果如下: 安装步骤: 1.下载地址: github地址:https://github.com/gildas-lormeau/JSONView-for-Chrome 2.解压文件 3.打开谷歌浏览 ...
- VS Code断点调试PHP超详细萌新教程
AppServ安装 1. 下载 2. 安装,一路默认设置顺便设置sql密码即可.这里建议不要修改端口,后续教程默认80端口. 3.点我测试,有下图则恭喜你AppServ安装完成. Xdebug配置 1 ...
- Flink 从 0 到 1 学习 —— Flink Data transformation(转换)
toc: true title: Flink 从 0 到 1 学习 -- Flink Data transformation(转换) date: 2018-11-04 tags: Flink 大数据 ...
- Mycat分布式数据库架构解决方案--配置defaultAccount属性报错解决方案
echo编辑整理,欢迎转载,转载请声明文章来源.欢迎添加echo微信(微信号:t2421499075)交流学习. 百战不败,依不自称常胜,百败不颓,依能奋力前行.--这才是真正的堪称强大!!! 该文章 ...