`
乱蓬头199303
  • 浏览: 80433 次
文章分类
社区版块
存档分类
最新评论

编程世界经典秘籍:程序员的提问之道

阅读更多

摘要: 简介 在黑客的世界里,当你拋出一个技术问题时,最终是否能得到有用的回答,往往取决于你所提问和追问的方式。本指南将教你如何正确的提问以获得你满意的答案。 不只是黑客,现在开放源代码(Open Source)软件已经相当盛行,你常常也可以由其他有经验的使用者身上得到好答案,这是件_好事_;使用者比起黑客来,往往对那些新手常遇到的问题更宽容一些。

简介

在黑客的世界里,当你拋出一个技术问题时,最终是否能得到有用的回答,往往取决于你所提问和追问的方式。本指南将教你如何正确的提问以获得你满意的答案。

不只是黑客,现在开放源代码(Open Source)软件已经相当盛行,你常常也可以由其他有经验的使用者身上得到好答案,这是件_好事_;使用者比起黑客来,往往对那些新手常遇到的问题更宽容一些。然而,将有经验的使用者视为黑客,并采用本指南所提的方法与他们沟通,同样也是能从他们身上得到满意回答的最有效方式。

首先你应该明白,黑客们喜爱有挑战性的问题,或者能激发我们思维的好问题。如果我们并非如此,那我们也不会成为你想询问的对象。如果你给了我们一个值得反复咀嚼玩味的好问题,我们自会对你感激不尽。好问题是激励,是厚礼。好问题可以提高我们的理解力,而且通常会暴露我们以前从没意识到或者思考过的问题。对黑客而言,"好问题!"是诚挚的大力称赞。

尽管如此,黑客们有着蔑视或傲慢面对简单问题的坏名声,这有时让我们看起来对新手、无知者似乎较有敌意,但其实不是那样的。

我们不讳言我们对那些不愿思考、或者在发问前不做他们该做的事的人的蔑视。那些人是时间杀手 -– 他们只想索取,从不付出,消耗我们可用在更有趣的问题或更值得回答的人身上的时间。我们称这样的人为 失败者(撸瑟) (由于历史原因,我们有时把它拼作 lusers)。

在提问之前

在你准备要通过电子邮件、新闻群组或者聊天室提出技术问题前,请先做到以下事情:

  1. 尝试在你准备提问的论坛的旧文章中搜索答案。

  2. 尝试上网搜索以找到答案。

  3. 尝试阅读手册以找到答案。

  4. 尝试阅读常见问题文件(FAQ)以找到答案。

  5. 尝试自己检查或试验以找到答案

  6. 向你身边的强者朋友打听以找到答案。

  7. 如果你是程序开发者,请尝试阅读源代码以找到答案。

当你提出问题的时候,请先表明你已经做了上述的努力;这将有助于树立你并不是一个不劳而获且浪费别人的时间的提问者。如果你能一并表达在做了上述努力的过程中所_学到_的东西会更好,因为我们更乐于回答那些表现出能从答案中学习的人的问题。

运用某些策略,比如先用 Google 搜索你所遇到的各种错误信息(既搜索 Google 论坛,也搜索网页),这样很可能直接就找到了能解决问题的文件或邮件列表线索。即使没有结果,在邮件列表或新闻组寻求帮助时加上一句 我在 Google 中搜过下列句子但没有找到什么有用的东西 也是件好事,即使它只是表明了搜索引擎不能提供哪些帮助。这么做(加上搜索过的字串)也让遇到相似问题的其他人能被搜索引擎引导到你的提问来。

别着急,不要指望几秒钟的 Google 搜索就能解决一个复杂的问题。在向专家求助之前,再阅读一下常见问题文件(FAQ)、放轻松、坐舒服一些,再花点时间思考一下这个问题。相信我们,他们能从你的提问看出你做了多少阅读与思考,如果你是有备而来,将更有可能得到解答。不要将所有问题一股脑拋出,只因你的第一次搜索没有找到答案(或者找到太多答案)。

准备好你的问题,再将问题仔细的思考过一遍,因为草率的发问只能得到草率的回答,或者根本得不到任何答案。越是能表现出在寻求帮助前你为解决问题所付出的努力,你越有可能得到实质性的帮助。

小心别问错了问题。如果你的问题基于错误的假设,某个普通黑客(J. Random Hacker)多半会一边在心里想着蠢问题…, 一边用无意义的字面解释来答复你,希望着你会从问题的回答(而非你想得到的答案)中汲取教训。

绝不要自以为_够格_得到答案,你没有;你并没有。毕竟你没有为这种服务支付任何报酬。你将会是自己去_挣到_一个答案,靠提出有内涵的、有趣的、有思维激励作用的问题 --一个有潜力能贡献社区经验的问题,而不仅仅是被动的从他人处索取知识。

​​​​​​​

原文链接

分享到:
评论

相关推荐

    python编程入门指南-编程入门指南.pdf

    9. **《编程珠玑》、《程序设计实践》、《能有效解决问题的提问方法》、《代码大全》、《程序员修炼之道》** - 这些书籍提供了关于编程最佳实践、问题解决策略和软件工程原则的宝贵指导,是每个程序员成长的必读...

    程序员职业ppt模板下载

    1. 封面页:通常会有一个引人注目的标题,如“程序员的工作世界”或“技术解决方案”,配以与编程相关的图形元素,如代码符号、电路板或像素图案,以体现IT行业的特色。 2. 介绍页:可以用来简单介绍演讲者或团队的...

    自学编程创新意:livecoding.tv实时直播编写代码

    Livecoding.tv作为一个新兴的在线平台,为世界各地的程序员和技术爱好者提供了一个独特的社交环境。该平台允许用户通过实时直播的方式展示自己的编程过程,同时也能与其他用户进行互动交流。 #### 平台发展历程 ...

    介绍几个VC编程用可以上的个人觉得不错的网站

    在VC编程领域,资源的获取和学习至关重要。以下是一些我认为对VC++(Visual C++)开发者非常有帮助的网站,这些网站提供了丰富的教程、工具、...记得持续学习,保持对新技术的关注,因为VC++和编程世界总在不断发展。

    MacTalk·人生元编程-池建强1

    1. 程序员的幸运:作者指出,程序员生活在一个技术革新不断的时代,有机会参与到改变世界的技术发展中。从Apple的创新设备到Google的前沿科技,程序员在塑造未来的过程中扮演着重要角色。然而,尽管这个职业有时会...

    编程修养-编程水平提升

    在编程世界中,编程修养是每位开发者不可或缺的素质,它涵盖了技术深度、学习态度、问题解决能力等多个方面。本文将深入探讨如何提升编程水平,帮助程序员成为更好的自己。 首先,专研精神是编程修养的核心。这不仅...

    好用的python编程软件

    Python编程语言以其简洁明了的语法和强大的功能深受程序员喜爱,尤其适合初学者入门。"好用的Python编程软件"通常指的是那些具有友好界面、丰富功能且易于学习的开发环境。下面将详细介绍几款常见的Python编程软件,...

    Python经典一百道练习题.zip

    "Python经典一百道练习题.zip"这个压缩包提供了一百个精心设计的Python编程练习题目,旨在帮助学习者巩固基础,提升技能。这些题目涵盖了Python语言的各个方面,包括基本语法、数据结构、函数、模块、文件操作、面向...

    程序员都应该了解哪些安全知识

    网友M.H提问:我是一名IT专业学生,现在是大三,直到现在我们才开始学习很多计算机相关的课程(编程、算法、计算机体系结构、数学等……)。  导读:本文来自StackOverflow上的一个问答贴。网友M.H提问:我是一名IT...

    C#初学者编程实例

    在C#编程的世界里,初学者常常需要通过实践来巩固理论知识,理解各种概念和语法。"C#初学者编程实例"就是一个极好的资源集合,它包含了一系列针对...记得在实践中不断提问、思考和改进,编程的学习之路才会越走越宽广。

    java编程入门

    Java编程入门是初学者踏入编程世界的一把钥匙,尤其对于那些对编程充满热情的爱好者而言,这是一份宝贵的资源。Java作为一种广泛使用的编程语言,以其跨平台性、面向对象的特性以及强大的社区支持,成为了许多新手...

    商业源码-编程源码-Sabre IPB v1.217.0814 简体中文版.zip

    在编程世界中,理解并掌握这样的商业源码,对于提升开发效率、优化业务流程以及深入了解软件工程都有着极大的帮助。 一、商业源码的价值 1. 可定制化:商业源码允许用户根据自身需求进行定制和修改,以适应特定业务...

    易语言入门教程.docx

    面向对象编程更符合现实世界中的抽象,提高了开发效率,但面向过程编程在某些底层系统编程或性能要求极高的场景中仍有其优势。 对于完全没有编程基础的初学者,学习易语言可以从以下几个方面入手: 1. 学习基本...

    学好编程语言必备思维

    在编程的世界里,掌握一门语言不仅是关于语法和逻辑的学习,更重要的是理解背后的思维方式和技术框架。本文将通过一个实际案例来探讨如何高效地学习一门编程语言,特别是PHP,并强调学习过程中应该采取的策略。 ###...

    Q690452提到的3本书

    首先,《松本行弘的程序世界》是由日本著名程序员松本行弘(又译作松本行宏,Yukihiro Matsumoto)所著,他是Ruby编程语言的创造者。这本书主要围绕编程语言的设计和实现展开,旨在引导读者思考编程的本质,理解编程...

    程序员面试技巧

    - **快速发展**:软件业作为世界上增长最快的朝阳产业之一,其发展速度和水平已经成为衡量一个国家现代化程度和综合国力的重要指标之一。 ### 2. 软件人才的竞争现状 - **激烈竞争**:随着软件技术的飞速发展,...

    hei Word 文档.docx

    标题 "hei Word 文档.docx" 提到的...这篇博客以轻松的方式引导新手进入Python的世界,帮助他们克服初学阶段的困惑,享受编程的乐趣。通过分享作者自己的学习经验,读者可以从中得到启发,更顺利地开启他们的编程旅程。

    给初学者选择方向的建议

    在选择编程语言作为初学者的学习方向时,首先要明确自己的兴趣所在和未来的发展目标。...无论数学背景还是英文水平,都不应成为初学者踏入编程世界的障碍。只要具备决心和行动,任何人都有机会在这个领域取得成功。

Global site tag (gtag.js) - Google Analytics