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 高可用系列(四) ...
随机推荐
- UVA - 11400 Lighting System Design
题文: You are given the task to design a lighting system for a huge conference hall. After doing a lot ...
- Mac部署hadoop3(伪分布式)
环境信息 操作系统:macOS Mojave 10.14.6 JDK:1.8.0_211 (安装位置:/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jd ...
- (19)ASP.NET Core EF创建模型(包含属性和排除属性、主键、生成的值)
1.什么是Fluent API? EF中内嵌的约定将POCO类映射到表.但是,有时您无法或不想遵守这些约定,需要将实体映射到约定指示外的其他对象,所以Fluent API和注解都是一种方法,这两种方法 ...
- Bzoj 4806 炮 (dp)
题目描述 众所周知,双炮叠叠将是中国象棋中很厉害的一招必杀技.炮吃子时必须隔一个棋子跳吃,即俗称"炮打隔子". 炮跟炮显然不能在一起打起来,于是rly一天借来了许多许多的炮在棋盘 ...
- win-socket
WIN32平台上的WINSOCK编程都要经过下列步骤: 定义变量->获得WINDOCK版本->加载WINSOCK库->初始化->创建套接字->设置套接字选项->关闭 ...
- vue 详情跳转至列表页 实现列表页缓存
甲爸爸提了一个需求,希望公众号内的商城能够像app一样,从商品详情页跳转至列表页及其他列表页时,可以实现列表页缓存(数据不刷新.位置固定到之前点的商品的位置) 本来想着scrollBehavior应该 ...
- vue移动端 实现手机左右滑动入场动画
app.vue <template> <div id="app"> <transition :name="transitionName&qu ...
- day34作业
作业 查看岗位是teacher的员工姓名.年龄 select name,age from teacher where post='teacher'; 查看岗位是teacher且年龄大于30岁的员工姓名 ...
- MySQL基础篇(1)SQL基础
SQL是Structure Query Language(结构化查询语言)的缩写,它是使用关系模型的数据库应用语言. 一.SQL分类(DDL,DML,DCL) DDL(Data Definition ...
- django-HttpResponse,render,redirect
1.导入相应的包 from django.shortcuts import HttpResponse, render, redirect 2.HttpResponse(返回字符串给浏览器) def i ...