程序员提问的艺术:28.4K Star指南!

程序员提问的艺术:28.4K Star指南!_第1张图片
Github: https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way
原文:http://www.catb.org/~esr/faqs/smart-questions.html

✅为什么讨厌某些提问者

  • 未自行尝试解决问题
    “怎么用Java写一个排序算法?”
    “我尝试使用快速排序算法来优化我的Java程序中的数据处理,但遇到了性能瓶颈。这是我的代码和我尝试过的优化方法。有没有更高效的算法或优化建议?”

  • 问题描述不清晰
    ❌:“我的代码不工作,怎么办?”
    “我在使用Python进行数据分析时遇到了一个错误。这是我的代码片段和错误输出。我已经尝试检查语法和更新库,但问题仍然存在。有没有可能的解决方案?”

  • 缺乏基本礼貌
    ❌:“我需要立刻解决这个bug,谁能帮我?”
    “大家好,我在调试这段代码时遇到了一个棘手的bug。希望有人能提供一些指导或建议,有偿。”

  • 过分要求或急躁
    错误提问:“我需要在今天解决这个网络安全问题,有谁能立即帮忙?”
    “我目前在处理一个紧急的网络安全问题,已经尝试了几种常见的解决方案但没有成功。如果有人了解这方面的知识,能否提供一些帮助或建议?”

✅应该如何提问-新手常见场景

场景1: 代码调试问题

❌:“我的Android应用崩溃了,怎么办?”
“我在开发一个Android应用时遇到了Activity崩溃的问题。当我尝试从主Activity切换到第二个Activity时,应用崩溃,并显示了NullPointerException错误。我已经检查了相关的Intent传递数据,但似乎没问题。这是崩溃时的日志和相关代码片段。请问可能是什么原因导致的?有没有改进的建议?”

场景2:学习新技术或框架

**❌:**在技术论坛或社交媒体上模糊地提问,“如何学习Python?”或“React从哪里开始?”
**:**在提问前,先通过官方文档、在线教程或入门书籍进行自学。如果在某个具体概念或步骤上遇到难题,可以明确地指出自己在哪个部分遇到了困难,已经尝试了哪些方法来理解,然后提出具体的问题。

场景三:参与开源项目

**❌:**直接在项目的Issue跟踪器或论坛上提问,“我怎样才能为这个项目做贡献?”
**:**首先阅读项目的README文件、贡献指南和开放的Issues。可以从解决一些初级的或标记为“good first issue”的问题开始。如果有具体的问题,比如关于设置开发环境的疑问,应该提出具体、明确的问题,并表明自己已经尝试过哪些步骤来解决这个问题。

✅提问完后

1. 耐心等待

提了问题就别急,大家都挺忙的。别人回答你是帮忙,不是义务,所以耐心点等。

2. 积极回应讨论:

如果有人回你的帖子,别光看,要回应。他们问你问题或给建议,你得跟上,这样才能把问题搞清楚,搞定。

3. 感谢帮助的人:

别人花时间回答你,记得说声谢谢。基本的礼貌,也能让人觉得帮你的时间没白费。

4. 开源思维:

问题解决了就把答案发上来。别人以后遇到同样的问题,能省不少事。

5. 吸收学习:

别只解决问题就完事,看看回答里学习解决问题的思路,以后遇到类似问题就知道怎么办了。

这本《如何聪明地提问》是我进入职场后读的第一本书,回想起来,总觉得自己应该早点读到它。这篇笔记只抛砖引玉,真正的精华还在书里。如果你们有时间,我强烈推荐去读一读原文,相信大家会有更深的体会和收获。最后,希望大家都能在技术的道路上越走越远,早日成为各自领域的大佬!加油!


免费简历模板

互联网运营个人简历范本
产品经理个人简历范本
深度学习算法工程师个人简历范本
PLC产品个人简历范本
Java开发个人简历范本
NodeJS 开发工程师个人简历范本
前端开发工程师个人简历范本
大数据开发工程师个人简历范本

其他简历相关文章

个人简历范本(精选5篇)
计算机专业个人简历范文(8篇)
程序员个人简历范本(精选5篇)
Java开发个人简历范本(2024最新版-附模板)
前端开发个人简历范本(2024最新版-附模板)

你可能感兴趣的:(程序员,如何提问,提问的艺术,计算机专业,大学生,学习)