`

关于开源文档:程序员可能忽略的十件事

 
阅读更多

via: http://code.csdn.net/news/2822503

 

大多数开源开发人员喜欢思考他们构建软件的质量,但其文档的质量常常被遗忘。没有人谈论一个项目的文档是多么出色,但其实文档对一个项目的成功却有直接的影响。没有一个良好的文档可能用户根本不会使用你的项目,亦或者压根不会喜欢。

然而大多数开源项目的文档都是令人极其失望的,主要从以下的几个方面来体现。

 

1. 缺乏一个好的自述或介绍

自述是潜在用户对你项目的第一印象。如果项目在 GitHub 上,自述自动的显示在该项目的主页上。如果你稍微不留神将自述弄错了,这些潜在的用户有可能再也不会回来了。所以你的项目必须有一个好的自述来吸引用户对你的项目产生兴趣。

 

自述文件至少应该包括以下几点说明:

是什么项目

面向何种用户

运行在什么硬件或者平台上

主要依赖关系

如何安装或者深入的方向指针

这些都是写给那些之前从未听说过你的项目甚至可能永远不会考虑你的项目的用户。当然也不要以为每个阅读你自述的用户都知道那是什么,必要的时候需要做出一些注解以及附上一些有用的链接,方便用户了解你的项目。

 

2. 不提供在线文档

虽然没有看到过关于这方面的研究调查,但我想 90% 的文档都是通过谷歌或者互联网的其他浏览器来查找的。所以文档必须在线并且可用。这一点我是如何发现的呢?因为很多的用户常常会不看常见问题的解答,而直接从网上搜索问题的答案,这常常就会在项目中出现问题。因此提供在线的文档可以帮助用户更好的解决问题。

 

3. 只有在线文档

这个问题的另一面就是开发人员只提供在线的文档。有些项目不附带该项目可交互的文档,或者包含的文档是不符合的版本。例如 PHP 语言不附带任何文档,如果你想要文档,必须用一个单独的页面来打开他们。然而更糟糕的是,只有核心代码可以下载。这样导致用户可能不能获得对自己有用的信息。

开源项目不能想当然的认为用户访问互联网时他们需要在线的文档。当然你也不希望用户过分的依赖你的项目网站。

 

4. 不包含安装文档

这个问题通常是包的创造者而不是项目开发者的问题。例如在 Ubuntu Linux 操作系统中,Perl 语言选择的包本身是一个单独的文档。用户必须知道他在安装的时候所需要的安装文档以及核心语言的文档,这样方便用户在遇见问题时及时地解决。

 

5. 缺乏截图

有没有更好的方式来获取潜在用户的注意,或者说明软件的正确使用方法?比较明智的做法是截图。在互联网时代,一张图也许胜过千言万语。截图能让用户判断自己使用的方法是否正确,也容易让他找到自己出错的地方。因此必要的截图对于开源文档来讲也是至关重要的。

 

6. 缺乏实例

对于基于代码的项目,模拟的截图固然是非常不错的,但是相关的实例也是必不可少的。这些实例不应该是抽象的,而应该是从现实世界当中提取的。花时间创建一些与项目相关的实例,向用户展示如何解决软件使用过程中出现的问题。

 

7. 不充分的链接和引用

如果有超链接,记得在文档中使用它们。不要以为用户读完文档就能明白并且理解,文档当中可能会存在一部分用户并不能理解的东西。这时候就需要你使用你所有的超链接以及引用来帮助用户解决一些问题。

 

8. 忘记新用户

当你写文档时,你是站在开发者自己的角度上来编写的,这对于软件的开发者来说着很容易。然而对于那些新用户来讲,则需要入门文档。为了使新用户能够尽早的了解你的软件或者说熟练掌握使用软件的方法,我认为应该使用单独的页面来为用户书写入门文档。

 

9. 不倾听用户需求

项目的开发者必须倾听用户对整个项目的需求。最有效的方法就是让更多的人对你的项目进行试用来找出问题。同等重要的是,在倾听用户需求的过程当中,项目开发人员应该考虑到用户提出这些问题背后的真正原因。

 

10. 不接受用户输入

如果你的项目有一个足够大的用户群,你可以让用户直接将评论添加到文档当中。我见过的最好的例子是 PHP 语言,其文档中的每个页面允许经过身份验证的用户添加评论,或添加的评论不属于核心文档。

分享到:
评论

相关推荐

    lover-awesome:程序员相亲助手,重点解决程序员交友、程序员恋爱、程序员相亲、程序员找对象的问题,真正开源交友.zip

    lover-awesome:程序员相亲助手,重点解决程序员交友、程序员恋爱、程序员相亲、程序员找对象的问题,真正开源交友。.zip,程序员相亲助手,重点解决程序员交友、程序员恋爱、程序员相亲、程序员找对象的问题,真正...

    最全JAVA学习路线一条龙思维导图(附资源链接)PS:程序员鱼皮

    最全JAVA学习路线一条龙思维导图(附资源链接)PS:程序员鱼皮 1. 最新,完整一条龙的大厂 ...5. 划分阶段、更有计划,且在最后给出持续学习的方向、探索 Java 程序员发展的无限可能 6. 完全开源,回馈社区,持续更新!

    全新模板,可直接修改模块内容

    3. 开源贡献:程序员简历模板通常会列出应聘者在开源社区中的贡献,包括代码提交、问题解决、文档编写等。 4. 教育背景:程序员简历模板通常会列出应聘者的教育背景,包括学位、学校和时间等。 5. 个人信息:...

    职业经营 1:程序员职业的本质(3).md

    程序员职业的本质首先体现在软件的本质上,它是一系列可以重复执行的命令。程序员通过编码将这些命令告诉机器,使得机器可以执行重复的工作,而无需人类不断参与,这使得程序员能够将注意力转移到下一个未被自动化的...

    基于Java技术的Smart Club:程序员刷题、交流俱乐部设计源码

    原始文件和Git忽略文件的存在则体现了项目对于版本控制的规范性,而开源许可证文件的加入,则是对于开源文化的尊重和遵守,鼓励了更多的程序员参与到平台的建设和完善中来。 Smart Club为程序员提供了一个全面的...

    开源企业文档管理系统

    开源企业文档管理系统是一种专为企业设计的,以源代码开放为特点的文档管理解决方案。它允许企业根据自身需求对系统进行定制和改进,提供更细致的权限控制,确保信息安全。此系统支持多种常见的文件格式,如PDF、DOC...

    代码艺术与圣诞欢乐:程序员如何用代码诠释圣诞节

    ②促进技术人员之间关于开源文化的交流,强化分享、协作精神;③鼓励利用技术承载更多的情感和社会责任感。 其他说明:文中提供了详尽的实际操作步骤,附带完整源代码片段,旨在引导读者实践,享受编程乐趣的同时也...

    当程序员的第一件事!!初学者看过来

    在踏入程序员这一职业路径之初,了解“当程序员的第一件事”对于每位初学者来说至关重要。本文将围绕这个主题展开,深入探讨对于编程新手而言至关重要的基础知识、技能培养以及心态调整等方面的内容。 ### 一、理解...

    全球最厉害最有钱的24位顶尖程序员及其代表项目

    全球最厉害的程序员:这类程序员通常在技术社区中广为人知,他们可能对编程语言有着深刻的了解,并且在其职业生涯中做出了巨大的贡献,比如编写了经典的编程书籍或开发了影响深远的软件项目。 全球最有钱的程序员:...

    程序员的十层楼word文档

    在程序员的职业发展道路上,我们可以将其比喻为十层楼,每层代表着不同的技术层次和专业深度。这个概念旨在帮助程序员明确自己的成长路径,并理解不同阶段所需的技术能力和知识。以下是对程序员十层楼的详细解读: ...

    2009年程序员杂志第十二期

    《2009年程序员杂志第十二期》是IT领域的一期重要出版物,它包含了当年程序员们关注的热点话题、技术趋势以及专业教程。这期杂志可能涵盖了多个与软件开发、编程语言、项目管理、新兴技术和行业动态相关的文章。由于...

    程序员之路探究

    同时,文档也提到了一个有趣的现象,即随着时间的推移,认为程序员年龄上限的门槛在上升,这可能与软件行业的成熟以及对经验丰富程序员的需求增加有关。 其次,在学习与实践方面,文档强调了编程的基本功,包括面向...

    从程序员到CTO大牛企业内部PDF与PPT合集.zip

    整理大牛分享文档如下,一线开发架构,技术文档 网易蜂巢公有容器云架构之路 新浪微博redis优化历程 微博Cache架构设计实践 Go在大数据开发中的经验总结 基于Go构建滴滴核心业务平台的实践 京东分布式K-V存储设计与...

    开源的 GPT 神器 今天我给大家推荐两款基于 GPT 开源的程序员效率神器

    标题中的“开源的 GPT 神器”指的是在编程领域中,利用GPT(Generative Pre-trained Transformer)技术开发的、可供程序员使用的开源工具。GPT是一种基于Transformer架构的深度学习模型,由OpenAI公司首次推出,它能...

    intro-程序员问卷调查

    问卷调查可能会设计多个部分来覆盖程序员的不同方面,包括但不限于编程语言偏好、工作环境满意度、使用开源软件的习惯、职业发展期望、以及对新技术的接受程度等。 这份问卷调查可能包含的文件名如intro4OSSlab....

    MFC程序员的WTL指南

    接着,描述中提到了网上关于WTL的讨论组和邮件列表,虽然WTL缺乏官方文档支持,但这些问题和疑惑在全球的开发社区中能够得到解答。这意味着,尽管WTL没有MSDN等官方文档,但实际使用中遇到的问题并不难找到解决方案...

    程序员的十层楼(十种境界)

    以下是对程序员十层楼(十种境界)的详细介绍和分析: 第1层:菜鸟 在程序员的世界里,菜鸟是指刚入行的初级开发者。他们可能具备基础的编程技能,了解一种或多种编程语言,如C/C++、Java或JavaScript。菜鸟需要...

    sweetie:程序员的小棉袄

    "Sweetie: 程序员的小棉袄"是一个与Python相关的项目,可能是为了帮助程序员更轻松、高效地进行开发工作。在这个项目中,"sweetie-master"可能是指项目的主分支或者主目录,通常在开源软件或代码库中,"master"分支...

    程序员最好的网站:程序员有用的一些网站

    这些网站通常涵盖了编程语言、框架、工具、开源项目等多个方面,是程序员提升技能、拓宽视野和积累经验的重要渠道。下面将详细介绍一些程序员可能会感兴趣的网站及其价值。 1. **Stack Overflow** - 这是一个全球...

Global site tag (gtag.js) - Google Analytics