ABSTRACT
Modern web applications consist of a significant amount of client- side code, written in JavaScript, HTML, and CSS. In this paper, we present a study of common challenges and misconceptions among web developers, by mining related questions asked on Stack Over- flow. We use unsupervised learning to categorize the mined questions and define a ranking algorithm to rank all the Stack Overflow questions based on their importance. We analyze the top 50 questions qualitatively. The results indicate that (1) the overall share of web development related discussions is increasing among developers, (2) browser related discussions are prevalent; however, this share is decreasing with time, (3) form validation and other DOM related discussions have been discussed consistently over time, (4) web related discussions are becoming more prevalent in mobile development, and (5) developers face implementation issues with new HTML5 features such as Canvas. We examine the implications of the results on the development, research, and standardization communities.
- HTML5 home | Intel developer zone. http://software.intel.com/en-us/html5/home. Accessed: 2014-02-03.Google Scholar
- M. Allamanis and C. Sutton. Why, when, and what: analyzing stack overflow questions by topic, type, and code. In Proceedings of the Tenth International Workshop on Mining Software Repositories, pages 53–56. IEEE Press, 2013. Google ScholarDigital Library
- A. Anderson, D. Huttenlocher, J. Kleinberg, and J. Leskovec. Steering user behavior with badges. In Proceedings of the 22nd international conference on World Wide Web, pages 95–106. International World Wide Web Conferences Steering Committee, 2013. Google ScholarDigital Library
- A. Barua, S. W. Thomas, and A. E. Hassan. What are developers talking about? an analysis of topics and trends in stack overflow. Empirical Software Engineering, pages 1–36, 2012. Google ScholarDigital Library
- D. M. Blei and J. Lafferty. Topic models. Text mining: classification, clustering, and applications, 10:71, 2009.Google Scholar
- D. M. Blei, A. Y. Ng, and M. I. Jordan. Latent dirichlet allocation. The Journal of Machine Learning Research, 3:993–1022, 2003. Google ScholarDigital Library
- A. Guha, S. Krishnamurthi, and T. Jim. Using static analysis for ajax intrusion detection. In Proceedings of the 18th international conference on World wide web, pages 561–570. ACM, 2009. Google ScholarDigital Library
- I. Hickson and D. Hyatt. HTML5: A vocabulary and associated apis for html and xhtml. W3C Working Draft edition, 2011.Google Scholar
- D. Kavaler, D. Posnett, C. Gibler, H. Chen, P. Devanbu, and V. Filkov. Using and asking: Apis used in the android market and asked about in stackoverflow. In Social Informatics, pages 405–418. Springer, 2013.Google Scholar
- M. Linares-Vásquez, B. Dit, and D. Poshyvanyk. An exploratory analysis of mobile development issues using stack overflow. In Proceedings of the Tenth International Workshop on Mining Software Repositories, pages 93–96. IEEE Press, 2013. Google ScholarDigital Library
- L. Mamykina, B. Manoim, M. Mittal, G. Hripcsak, and B. Hartmann. Design lessons from the fastest q&a site in the west. In Proceedings of the SIGCHI conference on Human factors in computing systems, pages 2857––2866. ACM, 2011. Google ScholarDigital Library
- A. Mesbah and S. Mirshokraie. Automated analysis of CSS rules to support style maintenance. In International Conference on Software Engineering (ICSE), pages 408–418. IEEE, 2012. Google ScholarDigital Library
- A. Mesbah and M. R. Prasad. Automated cross-browser compatibility testing. In Proceedings of the International Conference on Software Engineering (ICSE), pages 561–570. ACM, 2011. Google ScholarDigital Library
- F. Ocariza, K. Pattabiraman, and B. Zorn. JavaScript errors in the wild: An empirical study. In Software Reliability Engineering (ISSRE), 2011 IEEE 22nd International Symposium on, pages 100–109. IEEE, 2011. Google ScholarDigital Library
- F. S. Ocariza, K. Bajaj, K. Pattabiraman, and A. Mesbah. An empirical study of client-side JavaScript bugs. In International Symposium on Empirical Software Engineering and Measurement (ESEM), pages 55–64. IEEE, 2013.Google Scholar
- A. Pal, S. Chang, and J. A. Konstan. Evolution of experts in question answering communities. In ICWSM, 2012.Google Scholar
- C. Parnin, C. Treude, L. Grammel, and M.-A. Storey. Crowd documentation: Exploring the coverage and the dynamics of api discussions on stack overflow. Georgia Institute of Technology, Tech. Rep, 2012.Google Scholar
- M. Porter. {The Porter Stemming Algorithm}. 2009.Google Scholar
- P. Ratanaworabhan, B. Livshits, and B. G. Zorn. JSMeter: Comparing the behavior of JavaScript benchmarks with real web applications. In Proceedings of the 2010 USENIX conference on Web application development, pages 3–3. USENIX Association, 2010. Google ScholarDigital Library
- F. Riahi. Finding expert users in community question answering services using topic models. 2012.Google Scholar
- S. Roy Choudhary, M. R. Prasad, and A. Orso. X-PERT: Accurate identification of cross-browser issues in web applications. In Proceedings of the International Conference on Software Engineering (ICSE), pages 702–711. IEEE Press, 2013. Google ScholarDigital Library
- A. K. Saha, R. K. Saha, and K. A. Schneider. A discriminative model approach for suggesting tags automatically for stack overflow questions. In Proceedings of the Tenth International Workshop on Mining Software Repositories, pages 73–76. IEEE Press, 2013. Google ScholarDigital Library
- D. Sin, E. Lawson, and K. Kannoorpatti. Mobile web apps-the non-programmer’s alternative to native applications. In Human System Interactions (HSI), 2012 5th International Conference on, pages 8–15. IEEE, 2012. Google ScholarDigital Library
- V. S. Sinha, S. Mani, and M. Gupta. Exploring activeness of users in QA forums. In Proceedings of the Tenth International Workshop on Mining Software Repositories, pages 77–80. IEEE Press, 2013. Google ScholarDigital Library
- R. Stevens, J. Ganz, V. Filkov, P. Devanbu, and H. Chen. Asking for (and about) permissions used by android apps. In Proceedings of the Tenth International Workshop on Mining Software Repositories, pages 31–40. IEEE Press, 2013. Google ScholarDigital Library
- S. Subramanian and R. Holmes. Making sense of online code snippets. In Proceedings of the Tenth International Workshop on Mining Software Repositories, pages 85–88. IEEE Press, 2013. Google ScholarDigital Library
- B. Vasilescu, A. Capiluppi, and A. Serebrenik. Gender, representation and online participation: A quantitative study of stackoverflow. In International Conference on Social Informatics. ASE, 2012. Google ScholarDigital Library
- J. Weinberger, P. Saxena, D. Akhawe, M. Finifter, R. Shin, and D. Song. An empirical analysis of xss sanitization in web application frameworks. Technical report, Technical report, UC Berkeley, 2011.Google Scholar
- Y. Zheng, T. Bao, and X. Zhang. Statically locating web application bugs caused by asynchronous calls. In Proceedings of the 20th international conference on World wide web, pages 805–814. ACM, 2011. Google ScholarDigital Library
- Z. Zolaktaf, F. Riahi, M. Shafiei, and E. Milios. Modeling community question-answering archives. 2011.Google Scholar
Index Terms
- Mining questions asked by web developers
Comments