Abstract
Programming is knowledge intensive. While it is well understood that programmers spend lots of time looking for information, with few exceptions, there is a significant lack of data on what information they seek, and why. Modern platforms, like Android, comprise complex APIs that often perplex programmers. We ask: which elements are confusing, and why? Increasingly, when programmers need answers, they turn to StackOverflow. This provides a novel opportunity. There are a vast number of applications for Android devices, which can be readily analyzed, and many traces of interactions on StackOverflow. These provide a complementary perspective on using and asking, and allow the two phenomena to be studied together. How does the market demand for the USE of an API drive the market for knowledge about it? Here, we analyze data from Android applications and StackOverflow together, to find out what it is that programmers want to know and why.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Android Documentation, http://developer.android.com/reference/classes.html
APK Tool, http://code.google.com/p/android-apktool
businessweek.com, http://www.businessweek.com/technology/content/mar2011/tc20110324_269784.html
Cameron, A.C., Trivedi, P.K.: Regression analysis of count data, vol. 30. Cambridge University Press (1998)
CNN, http://edition.cnn.com/2013/03/05/business/global-apps-industry
Cohen, J.: Applied multiple regression/correlation analysis for the behavioral sciences. Lawrence Erlbaum (2003)
Corbi, T.A.: Program understanding: Challenge for the 1990s. IBM Systems Journal 28(2), 294–306 (1989)
Curtis, B., Krasner, H., Iscoe, N.: A field study of the software design process for large systems. Communications of the ACM 31(11), 1268–1287 (1988)
Dagenais, B., Robillard, M.P.: Creating and evolving developer documentation: understanding the decisions of open source contributors. In: Proceedings of 18th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 127–136. ACM (2010)
Javadoc Documentation, http://docs.oracle.com/javase/6/docs/technotes/guides/javadoc/doclet/overview.html
Jiau, H.C., Yang, F.-P.: Facing up to the inequality of crowdsourced api documentation. ACM SIGSOFT Software Engineering Notes 37(1), 1–9 (2012)
Ko, A.J., DeLine, R., Venolia, G.: Information needs in collocated software development teams. In: Proceedings of the 29th International Conference on Software Engineering, pp. 344–353. IEEE Computer Society (2007)
Letovsky, S.: Cognitive processes in program comprehension. Journal of Systems and Software 7(4), 325–339 (1987)
ninlabs blog, http://blog.ninlabs.com/2013/03/api-documentation/
Parnin, C., Treude, C., Grammel, L., Storey, M.-A.: Crowd documentation: Exploring the coverage and the dynamics of api discussions on stack overflow. Georgia Institute of Technology, Tech. Rep.
Posnett, D., Warburg, E., Devanbu, P., Filkov, V.: Mining stack exchange: Expertise is evident from earliest interactions
Rigby, P.C., Robillard, M.P.: Discovering essential code elements in informal documentation. In: ICSE 2013 (2013)
Sillito, J., Murphy, G.C., De Volder, K.: Asking and answering questions during a programming change task. IEEE Transactions on Software Engineering 34(4), 434–451 (2008)
StackOverflow Data, http://blog.stackoverflow.com/category/cc-wiki-dump/
Treude, C., Barzilay, O., Storey, M.-A.: How do programmers ask and answer questions on the web?: Nier track. In: 2011 33rd International Conference on Software Engineering (ICSE), pp. 804–807. IEEE (2011)
Treude, C., Storey, M.-A.: Effective communication of software development knowledge through community portals. In: Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, pp. 91–101. ACM (2011)
Vuong, Q.H.: Likelihood ratio tests for model selection and non-nested hypotheses. Econometrica: Journal of the Econometric Society, 307–333 (1989)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer International Publishing Switzerland
About this paper
Cite this paper
Kavaler, D., Posnett, D., Gibler, C., Chen, H., Devanbu, P., Filkov, V. (2013). Using and Asking: APIs Used in the Android Market and Asked about in StackOverflow. In: Jatowt, A., et al. Social Informatics. SocInfo 2013. Lecture Notes in Computer Science, vol 8238. Springer, Cham. https://doi.org/10.1007/978-3-319-03260-3_35
Download citation
DOI: https://doi.org/10.1007/978-3-319-03260-3_35
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-03259-7
Online ISBN: 978-3-319-03260-3
eBook Packages: Computer ScienceComputer Science (R0)