程序员提问的艺术:28.4K Star指南,告别成为办公室讨厌鬼!

在这里插入图片描述
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最新版-附模板)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/594229.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机毕业设计 基于SpringBoot的工作量统计系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

IDEA断点调试

IDEA断点调试 断点调试是一种在程序执行过程中暂停执行并逐步检查代码状态的方法。它允许开发者在程序运行到特定位置时暂停执行,查看变量的值、执行过程和调用栈等信息,从而更好地理解代码的运行情况和解决问题。可以帮助我们查看java底层源代码的执行…

day 57 算法训练|动态规划part17

参考:代码随想录 647. 回文子串 1. dp数组(dp table)以及下标的含义 是不是能找到一种递归关系,也就是判断一个子字符串(字符串的下表范围[i,j])是否回文,依赖于,子字符串&#x…

Amos各版本安装指南

Amos下载链接 https://pan.baidu.com/s/1uyblN8Q-knNKkqQVlNnXTw?pwd0531 1.鼠标右击【Amos28】压缩包(win11及以上系统需先点击“显示更多选项”)选择【解压到 Amos28】。 2.打开解压后的文件夹,鼠标右击【Amos28】选择【以管理员身份运行…

AUTOSAR软件架构描述文档,AUTOSAR_EXP_LayeredSoftwareArchitecture

AUTOSAR软件架构描述文档,我们常见的经典的CP架构及OS双核等架构描述 下载链接:https://www.autosar.org/fileadmin/standards/R21-11/CP/AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf

macos下php 5.6 7.0 7.4 8.0 8.3 8.4全版本PHP开发环境安装方法

在macos中如果使用brew 官方默认的core tap 只可以安装官方最新的稳定版PHP, 如果想要安装 php 5.6 或者 php 8.4版本的PHP就需要使用第三方的tap , 这里分享一个比较全面的brew tap shivammathur/php 这个tap里面包含了从php5.6到最新版php8.4的所有可用最新版本PHP, 而且是同…

IDEA设置新建类注释、手动注释详解

文章目录 一、背景二、模板三、设置方法1、新建类注释设置2、手动注释设置 一、背景 每次在一台新电脑安装idea,都需要重新设置idea注释配置,说常用吧,也就新安装时才用,时间久步骤容易忘记,所以用此文章记录一下。 二…

阿里云服务器系统盘高效云盘、ESSD Entry云盘、SSD云盘、ESSD云盘测评

阿里云服务器系统盘或数据盘支持多种云盘类型,如高效云盘、ESSD Entry云盘、SSD云盘、ESSD云盘、ESSD PL-X云盘及ESSD AutoPL云盘等,阿里云百科aliyunbaike.com详细介绍不同云盘说明及单盘容量、最大/最小IOPS、最大/最小吞吐量、单路随机写平均时延等性…

Mysql的基本用法(上)非常详细、快速上手

上篇结束了java基础,本篇主要对Mysql中的一些常用的方法进行了总结,主要对查询方法进行了讲解,包括重要的多表查询用到的内连接和外连接等,以下代码可以直接复制到可视化软件中,方便阅读以及练习; SELECT *…

H5C3练习心得 2024.01.03(文字加载动画效果)--transition,动画渲染,遮罩层

(一)transition(过渡效果) 1.详解 通常将css的属性值更改后,浏览器会立即更新新的样式,例如在鼠标悬停在元素上时,通过 :hover 选择器定义的样式会立即应用在元素上。 在 CSS3 中加入了一项过…

C#中使用正则表达式实现汉字转拼音

目录 一、正则表达式基础 二、实例 1.程序入口Form1.cs 2.类库PinYin.cs 三、生成效果 四、实例中的知识点 1.Regex 2.ToCharArray() 3.Regex.IsMatch 方法 (1)定义 (2)重载 (3)IsMatch(Stri…

开发手机中控软件:从零开始的代码之旅!

在这个智能化风靡的时代,手机中控软件成为了许多人的梦想,通过一款软件,我们可以轻松地控制家中的各种智能设备,实现智能家居的美好愿景。 但是,开发手机中控软件并非易事,需要具备一定的编程知识和技能&a…

Allins 官网上线,标志铭文赛道正式进入 AMM 交易时代

“Allins 正在通过全新的 AMM 方案为BRC20及多链铭文资产拓展 DeFi 场景,官网的全新上线意味着铭文资产的交易正式进入 AMM 时代。”

B01、类加载子系统-02

JVM架构图-英文版 中文版见下图: 1、概述类的加载器及类加载过程 1.1、类加载子系统的作用 类加载器子系统负责从文件系统或者网络中加载Class文件,class文件在文件开头有特定的文件标识。ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engi…

如何自动生成 API 接口文档 - 一份详细指南

本篇文章详细教你如何使用 Apifox 的 IDEA 插件实现自动生成接口代码。好处简单总结有以下几点: 自动生成接口文档: 不用手写,一键点击就可以自动生成文档,当有更新时,点击一下就可以自动同步接口文档;代码…

多核调度预备知识

问题 内核对进程调度时发生了什么? 进程调度的本质 任务 / 进程 切换 即:上下文切换,内核对处理器上的执行的进程进行切换"上下文" 指:寄存器的值"上下文切换" 指: 将寄存器的值保存在内存中 (…

uniapp 微信小程序 输入框限制输入2位小数

此处input的type为digit <input v-model"amount" type"digit" placeholder"请填写金额" input"checkAmount"/>data() {return {amount:""} }methods: {// 小数点后2位checkAmount(e){e (e.match(/^\d*(\.?\d{0,2})…

Abstract Factory抽象工厂模式(对象创建)

抽象工厂模式&#xff1a;Abstract Factory 链接&#xff1a;抽象工厂模式实例代码 解析 目的 在软件系统中&#xff0c;经常面临着“一系列相互依赖的对象工作”&#xff1b;同时&#xff0c;由于需求的变化&#xff0c;往往存在更多系列对象的创建工作。 如何应对这种变化…

im6ull学习总结(三-2)文字显示中文字符

承接上篇文章 中文字符的点阵显示 使用点阵字库时&#xff0c;中文字符的显示原理跟 ASCII 字符是一样的。要注意的地方在于中文的编码&#xff1a;在 C 源文件中它的编码方式是 GB2312 还是 UTF-8&#xff1f;编译出的可执行程序&#xff0c;其中的汉字编码方式是 GB2312 还…

Linux 485驱动通信异常

背景 前段时间接到一个项目&#xff0c;要求用主控用485和MCU通信。将代码调试好之后&#xff0c;验证没问题就发给测试了。测试测的也没问题。 但是&#xff0c;到设备量产时&#xff0c;发现有几台设备功能异常。将设备拿回来排查&#xff0c;发现是485通信有问题&#xff…