Measuring API documentation on the web

Software development blogs, developer forums and Q&A websites are changing the way software is documented. With these tools, developers can create and communicate knowledge and experiences without relying on a central authority to provide official documentation. Instead, any content created by a developer is just a web search away. To understand whether documentation via social media can replace or augment more traditional forms of documentation, we study the extent to which the methods of one particular API - jQuery - are documented on the Web. We analyze 1,730 search results and show that software development blogs in particular cover 87.9% of the API methods, mainly featuring tutorials and personal experiences about using the methods. Further, this effort is shared by a large group of developers contributing just a few blog posts. Our findings indicate that social media is more than a niche in software documentation, that it can provide high levels of coverage and that it gives readers a chance to engage with authors.

[1]  Andrew Begel,et al.  Codebook: discovering and exploiting relationships in software repositories , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[2]  Rastislav Bodík,et al.  Jungloid mining: helping to navigate the API jungle , 2005, PLDI '05.

[3]  Brad A. Myers,et al.  Jadeite: improving API documentation using usage information , 2009, CHI Extended Abstracts.

[4]  Martin P. Robillard,et al.  What Makes APIs Hard to Learn? Answers from Developers , 2009, IEEE Software.

[5]  Rachel Harrison,et al.  A survey of social media use in software systems development , 2010, Web2SE '10.

[6]  Frank Maurer,et al.  The role of blogging in generating a software product vision , 2009, 2009 ICSE Workshop on Cooperative and Human Aspects on Software Engineering.

[7]  San Murugesan,et al.  Understanding Web 2.0 , 2007, IT Professional.

[8]  Martin P. Robillard,et al.  Creating and evolving developer documentation: understanding the decisions of open source contributors , 2010, FSE '10.

[9]  Neil A. M. Maiden,et al.  End-user requirements blogging with iRequire , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[10]  Robert J. Walker,et al.  A newbie's guide to eclipse APIs , 2008, MSR '08.

[11]  Rachel K. E. Bellamy,et al.  BlogCentral: the role of internal blogs at work , 2007, CHI Extended Abstracts.

[12]  Jonathan Grudin,et al.  Crossing Boundaries: A Case Study of Employee Blogging , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[13]  Janice Singer,et al.  How software engineers use documentation: the state of the practice , 2003, IEEE Software.

[14]  Brad A. Myers,et al.  Mica: A Web-Search Tool for Finding API Components and Examples , 2006, Visual Languages and Human-Centric Computing (VL/HCC'06).

[15]  Mira Kajko-Mattsson,et al.  A Survey of Documentation Practice within Corrective Maintenance , 2004, Empirical Software Engineering.

[16]  Lena Mamykina,et al.  Design lessons from the fastest q&a site in the west , 2011, CHI.

[17]  Christoph Treude,et al.  How do programmers ask and answer questions on the web?: NIER track , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[18]  Eleni Stroulia,et al.  Annoki: a MediaWiki-based collaboration platform , 2010, Web2SE '10.

[19]  Tim O'Reilly,et al.  What is Web 2.0: Design Patterns and Business Models for the Next Generation of Software , 2007 .

[20]  David R. Millen,et al.  Dogear: Social bookmarking in the enterprise , 2006, CHI.

[21]  James Fogarty,et al.  Assieme: finding and leveraging implicit references in a web search interface for programmers , 2007, UIST '07.