为什么开发者热衷在Stack Overflow上查阅API文档?

摘要:一项新研究跟踪了Android开发者的访问历史,发现开发者多达二分之一的文档是从Stack Overflow上获取到的,而Stack Overflow上的示例也多于官方指南,开发者通过搜索更多时候是去访问Stack Overflow上的问题讨论而不是访问官方文档。那么,为什么开发者热衷在Stack Overflow上查看API文档呢?

微软等软件公司为API、服务和软件平台等主题创建数以百万计的文档,创建软件文档费时费力,然而却越来越不讨好,因为软件开发者对这些枯燥的文字日益失去兴趣。如果遇到问题,他们更多时间是到Stack Overflow等开发者问答社区去询问。那么,为什么开发者喜欢在Stack Overflow上查看API文档呢?以及 为何Stack Overflow能如此受青睐呢?且看本文分析。

企业、开发者的思想转变

企业也注意到了这一趋势,如YouTube API就将开发者支持论坛从Google Groups转移到Stack Overflow,他们的API文档是由数千个问题组成。Android开发者也是如此,他们更多是到 Stack Overflow讨论API相关问题,而不是访问 developer.android.com开发者官方网站阅读官方文档。

开发者开始间接地记录API,这一过程我们称之为“群众文档”(crowd documentation),他们在博客中推API的相关文章以及提出有关API的问答机制。我们发现未经任何协调,在Stack Overflow上讨论API类的Android开发者竟高达88%。

一项新研究跟踪了Android开发者的访问历史,发现开发者多达二分之一的文档是从Stack Overflow上获取到的,而Stack Overflow上的示例也多于官方指南,开发者通过搜索更多时候是去访问Stack Overflow上的问题讨论而不是访问官方文档。

为了做调查我们收集了Android开发者1316天的历史记录(平均每位开发者有11周),发现有9234位访问 StackOverflow,2547位访问 developer.android.com并下载了Android开发文档。此外,我们还分析了代码示例使用率,这些数据均是通过Stack Overflow和developer.android.com开发指南的访问数据而得出。

在这项调查中,我们发现:

  • 开发者从Stack Overflow上获取文档比例高达50%;
  • 从Stack Overflow上下载示例要比官方文档指南要多;
  • 通过Web搜索,发现Stack Overflow上的问题访问比官方文档高达 2x-10x。

此外,我们还发现一些有趣的Web浏览模式:

  • 开发者直接浏览官方文档呈现间歇式的爆炸模式;
  • 部分开发者以“学徒”的方式通过每位Stack Overflow用户学习API;
  • 开发者在开发过程中通过搜索连续引用Stack Overflow问题。

为什么开发人员喜欢在Stack Overflow查阅文档?

我们分析了开发人员通常多久访问一次Stack Overflow上Android的开发问题以及官方Android 文档的访问频率。

如图所示:

在同一天中三位不同的开发者(A,E,Q) 呈现出不同的访问模式。

我们随机采访了选择使用Android官方文档的开发者,他们认为:

C:对Android的所有版本保持更新。很多示例与我们所需要的无关(要么太复杂,要么不够详细!)。

D:官方文档最重要的一点是缺乏边缘案例和错误文档。

J:官方文档中没有足够多的示例。

代码示例:

  • Android官方文档指南只有36%的API类文档说明(引用API类的一段文字),而Stack Overflow则高达88%;
  • Stack Overflow上的代码示例是官方文档的两倍:官方Android文档指南只有26%的API类代码示例,而Stack Overflow有56%;
  • 为整个Android官方文档指南贡献代码的权威人士总数为1,711人 ,而Stack Overflow上的编码贡献者有156,747人。

文档使用模式

开发流程图

大多数开发者通过搜索访问Stack Overflow,另外一些开发者直接访问官方文档。两位开发人员:A和B,他们通过Stack Overflow不断“监控”Android开发的最新问题。

学徒与专家

起初,我也曾在developer.android.com中进行查询相关问题,但在我看来,对于一位新手通过搜索开发者文档来进行Android开发将是一项艰巨的任务。因此,我选择查看Stack Overflow上一些知名专家的文章,这也是学习Android最简单的方法。当你拥有Android方面的基础知识时,开发文档对你非常有用。

有趣的是,Stack Overflow上出现了同样的思想认知:

大部分Stack Overflow的贡献者非常乐意回答你的问题。

原文出自:  ninlabs

(编译/夏梦竹 审校/王然)



话题补充: 为什么Stack Overflow会如此成功?

Stack Overflow做了一个很窄的问答社区,他的成功在于定位精准以及针对用户的产品设计。

CSDN和程序员杂志 创始人蒋涛认为:Stack Overflow在产品设计上的特色值得学习

1)更轻的参与,更快的反馈系统

原来的问答制模式,包括CSDN BBS需要用户回答问题才得分。 参与方式比较重, 而现在Stack Overflow的投票机制对问题表示赞同(提问的人也能得到积分),对回答表示赞同或反对,很容易参与。提问题和回答问题的人也容易得到满足。

2)更严格的管理,更开放的参与

Stack Overflow对问题内容质量控制很严,而且设计的是全员参与管理模式,只要你又足够的Reputation,就可以管理,比原来的斑竹管理模式更合理有效。

开发者 王诗沐:Stack Overflow的tag设计是集各家之大成

1. tag贯穿整个产品。不仅只是帮助用户搜索信息,Stack Overflow很早就允许用户订阅tag,设置自己喜欢和不喜欢的tag;后来又开发了tag的badges,很好地和reputation联系在了一起。再后来用tag来做广告。可以说Stack Overflow的tag设计是集各家之大成,在里面可以看到delicious、twitter等的优点,而且还自己创新了tag的badges。

2. 早期非常focus在基本需求。最早的Stack Overflow的界面比现在更朴素,资源全集中在问题与答案、用户投票和声望设计上,础搭的十分牢固。

3. 放长线,钓大鱼。Stack Overflow现在最大的特点就是单纯,很多推广时期依靠的功能(badges、reputation等),实际上都是基础功能延伸而来的,这个很多产品都没做到,国内尤其多。比如腾讯微博的badges,怎么看怎么生硬。这实际上体现了Stack Overflow在产品节奏和规划上的高明,各个复杂的功能和系统,其实都是从主干上延伸开来,而非再生主干。摘要:一项新研究跟踪了Android开发者的访问历史,发现开发者多达二分之一的文档是从Stack Overflow上获取到的,而Stack Overflow上的示例也多于官方指南,开发者通过搜索更多时候是去访问Stack Overflow上的问题讨论而不是访问官方文档。那么,为什么开发者热衷在Stack Overflow上查看API文档呢?

微软等软件公司为API、服务和软件平台等主题创建数以百万计的文档,创建软件文档费时费力,然而却越来越不讨好,因为软件开发者对这些枯燥的文字日益失去兴趣。如果遇到问题,他们更多时间是到Stack Overflow等开发者问答社区去询问。那么,为什么开发者喜欢在Stack Overflow上查看API文档呢?以及 为何Stack Overflow能如此受青睐呢?且看本文分析。

企业、开发者的思想转变

企业也注意到了这一趋势,如YouTube API就将开发者支持论坛从Google Groups转移到Stack Overflow,他们的API文档是由数千个问题组成。Android开发者也是如此,他们更多是到 Stack Overflow讨论API相关问题,而不是访问 developer.android.com开发者官方网站阅读官方文档。

开发者开始间接地记录API,这一过程我们称之为“群众文档”(crowd documentation),他们在博客中推API的相关文章以及提出有关API的问答机制。我们发现未经任何协调,在Stack Overflow上讨论API类的Android开发者竟高达88%。

一项新研究跟踪了Android开发者的访问历史,发现开发者多达二分之一的文档是从Stack Overflow上获取到的,而Stack Overflow上的示例也多于官方指南,开发者通过搜索更多时候是去访问Stack Overflow上的问题讨论而不是访问官方文档。

为了做调查我们收集了Android开发者1316天的历史记录(平均每位开发者有11周),发现有9234位访问 StackOverflow,2547位访问 developer.android.com并下载了Android开发文档。此外,我们还分析了代码示例使用率,这些数据均是通过Stack Overflow和developer.android.com开发指南的访问数据而得出。

在这项调查中,我们发现:

  • 开发者从Stack Overflow上获取文档比例高达50%;
  • 从Stack Overflow上下载示例要比官方文档指南要多;
  • 通过Web搜索,发现Stack Overflow上的问题访问比官方文档高达 2x-10x。

此外,我们还发现一些有趣的Web浏览模式:

  • 开发者直接浏览官方文档呈现间歇式的爆炸模式;
  • 部分开发者以“学徒”的方式通过每位Stack Overflow用户学习API;
  • 开发者在开发过程中通过搜索连续引用Stack Overflow问题。

为什么开发人员喜欢在Stack Overflow查阅文档?

我们分析了开发人员通常多久访问一次Stack Overflow上Android的开发问题以及官方Android 文档的访问频率。

如图所示:

在同一天中三位不同的开发者(A,E,Q) 呈现出不同的访问模式。

我们随机采访了选择使用Android官方文档的开发者,他们认为:

C:对Android的所有版本保持更新。很多示例与我们所需要的无关(要么太复杂,要么不够详细!)。

D:官方文档最重要的一点是缺乏边缘案例和错误文档。

J:官方文档中没有足够多的示例。

代码示例:

  • Android官方文档指南只有36%的API类文档说明(引用API类的一段文字),而Stack Overflow则高达88%;
  • Stack Overflow上的代码示例是官方文档的两倍:官方Android文档指南只有26%的API类代码示例,而Stack Overflow有56%;
  • 为整个Android官方文档指南贡献代码的权威人士总数为1,711人 ,而Stack Overflow上的编码贡献者有156,747人。

文档使用模式

开发流程图

大多数开发者通过搜索访问Stack Overflow,另外一些开发者直接访问官方文档。两位开发人员:A和B,他们通过Stack Overflow不断“监控”Android开发的最新问题。

学徒与专家

起初,我也曾在developer.android.com中进行查询相关问题,但在我看来,对于一位新手通过搜索开发者文档来进行Android开发将是一项艰巨的任务。因此,我选择查看Stack Overflow上一些知名专家的文章,这也是学习Android最简单的方法。当你拥有Android方面的基础知识时,开发文档对你非常有用。

有趣的是,Stack Overflow上出现了同样的思想认知:

大部分Stack Overflow的贡献者非常乐意回答你的问题。

原文出自:  ninlabs

(编译/夏梦竹 审校/王然)



话题补充: 为什么Stack Overflow会如此成功?

Stack Overflow做了一个很窄的问答社区,他的成功在于定位精准以及针对用户的产品设计。

CSDN和程序员杂志 创始人蒋涛认为:Stack Overflow在产品设计上的特色值得学习

1)更轻的参与,更快的反馈系统

原来的问答制模式,包括CSDN BBS需要用户回答问题才得分。 参与方式比较重, 而现在Stack Overflow的投票机制对问题表示赞同(提问的人也能得到积分),对回答表示赞同或反对,很容易参与。提问题和回答问题的人也容易得到满足。

2)更严格的管理,更开放的参与

Stack Overflow对问题内容质量控制很严,而且设计的是全员参与管理模式,只要你又足够的Reputation,就可以管理,比原来的斑竹管理模式更合理有效。

开发者 王诗沐:Stack Overflow的tag设计是集各家之大成

1. tag贯穿整个产品。不仅只是帮助用户搜索信息,Stack Overflow很早就允许用户订阅tag,设置自己喜欢和不喜欢的tag;后来又开发了tag的badges,很好地和reputation联系在了一起。再后来用tag来做广告。可以说Stack Overflow的tag设计是集各家之大成,在里面可以看到delicious、twitter等的优点,而且还自己创新了tag的badges。

2. 早期非常focus在基本需求。最早的Stack Overflow的界面比现在更朴素,资源全集中在问题与答案、用户投票和声望设计上,础搭的十分牢固。

3. 放长线,钓大鱼。Stack Overflow现在最大的特点就是单纯,很多推广时期依靠的功能(badges、reputation等),实际上都是基础功能延伸而来的,这个很多产品都没做到,国内尤其多。比如腾讯微博的badges,怎么看怎么生硬。这实际上体现了Stack Overflow在产品节奏和规划上的高明,各个复杂的功能和系统,其实都是从主干上延伸开来,而非再生主干。

时间: 2024-10-19 00:32:03

为什么开发者热衷在Stack Overflow上查阅API文档?的相关文章

Stack Overflow 上排名前十的与API相关的问题

Stack Overflow是一个庞大的编程知识仓库,在Stack Overflow 上,数百万的提问被回答,并且这些回答都是高质量的.这就是为什么在Google搜索结果的排行榜上,Stack Overflow 总是位居首位. 虽然Stack Overflow上有非常多的提问,但是仍然每天都有大量的问题被提出,其中的很多都等待解答或者没有得到好的解答.因此,问题是如何找到答案的,通过Stack Overflow是不够的. 随着成千上万的开发者使用Java的API并且在Github上分享他们的项目

Stack Overflow上59万浏览量的提问:为什么会发生ArrayIndexOutOfBoundsException?

在逛 Stack Overflow 的时候,发现了一些访问量像昆仑山一样高的问题,比如说这个:为什么会发生 ArrayIndexOutOfBoundsException?这样看似简单到不值得一问的问题,访问量足足有 69万+,这不得了啊!说明有不少的初级程序员被这个问题困扰过.实话实说吧,我也有点吃不准为什么. 来回顾一下提问者的问题: ArrayIndexOutOfBoundsException 究竟意味着什么?我该如何摆脱这个错误. 如果你也曾被这个问题困扰过,或者正在被困扰,就请随我一起来

Core Web API上使用Swagger提供API文档

在ASP.NET Core Web API上使用Swagger提供API文档 我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页面后,在IISExpress启动Web API站点后,会自动重定向到API文档页面,非常方便.这不仅让我能够快速省查API设计的合理性,同时从API的使用角度也为我自己提供了便捷.下图就是我的博客系统RESTful API

windows 7 打开sharepoint 2007上的office文档需要输入用户名和密码

在windows 7 的机器上直接打开sharepoint网站正常,但是打开sharepoint 2007上的office文档需要输入用户名和密码. 已加入域.域中xp系统正常. 问题主要是windows 7和vista系统本身导致的 按微软kb的方法修改注册表: After you apply this hotfix, you have to create a registry entry. To do this, follow these steps: Click Start, type r

上传Text文档并转换为PDF(解决乱码)

前些日子,Insus.NET有分享一篇<上传Text文档并转换为PDF>http://www.cnblogs.com/insus/p/4313092.html 它是按最简单与默认方式来处理. 它在处理带有中文的文本文件时,转换为PDF时,中文不能正常显示,乱码. 本篇算得上是在那基础上,进行重构,解决乱码问题. 为了解决字符问题,我们需要在专案下创建一个目录,如Fonts是用来存储字体.我们去windows目录下把SIMSUN.TTC字体拷贝过来. 在控制器的PostFile()操作中,也得需

我的Android笔记--Intent上(我是文档的搬运工)

我是文档的搬运工. Intent,意图,它是一个消息传递对象.对于意图最常见的就是从一个Activity跳转到另一个Activity,或者启动一个服务.发送一个广播等等. 它分为显式意图和隐式意图,下面是API指南给的解释. 显式 Intent :按名称(完全限定类名)指定要启动的组件.通常,您会在自己的应用中使用显式 Intent 来启动组件,这是因为您知道要启动的 Activity 或服务的类名.例如,启动新 Activity 以响应用户操作,或者启动服务以在后台下载文件. 隐式 Inten

[sharepoint]rest api文档库文件上传,下载,拷贝,剪切,删除文件,创建文件夹,修改文件夹属性,删除文件夹,获取文档列表

写在前面 最近对文档库的知识点进行了整理,也就有了这篇文章,当时查找这些接口,并用在实践中,确实废了一些功夫,也为了让更多的人走更少的弯路. 系列文章 sharepoint环境安装过程中几点需要注意的地方 Rest API的简单应用 rest api方式实现对文档库的管理 通过WebClient模拟post上传文件到服务器 WebHttpRequest在sharepoint文档库中的使用 [sharepoint]Rest api相关知识(转) [sharepoint]根据用户名获取该用户的权限

上传Text文档并转换为PDF

今天在ASP.NET MVC环境中学习一些PDF相关的知识,想法是上传文件成功时,并把文件转换为PDF文档. 打开你的专案,运行NuGet包管理器,下载一个叫iTextSharp的东东: 点击Install,按钮提示确认安装,成功安装或是检测到专案中已经安装,它状态显示如下: 在控制器创建操作(Action): 再在控制器中,创建另一个操作方法,是处理文件上传以及转换PDF的功能: FileStream类去打开文件并读取,获取文档的byte[] array.iTextSharp类对象PdfWri

Bootstrap FileInput 多图上传插件 文档属性说明

Bootstrap FileInput 多图上传插件   原文链接:http://blog.csdn.net/misterwho/article/details/72886248?utm_source=itdadao&utm_medium=referral这货融合bootstrap框架,界面相当不错,api非常丰富,可定制内容能满足绝大数的场景. 最近在撸一个项目,用到它,花时间收集了一些文档,整理并翻译了部份内容.备用. github 地址 https://github.com/kartik-