Understanding the Working Habits of GH-SO Users on GitHub Commit Activity and Stack Overflow Post Activity

Author(s):  
Jungil Kim ◽  
Eunjoo Lee

GitHub and Stack Overflow are often used together for software development. GH-SO users, who use both GitHub and Stack Overflow, contribute to the development of various software projects in GitHub and share their knowledge and experience on software development in Stack Overflow. To widely understand the interests and working habits of GH-SO users on software development, it is important to investigate how GH-SO users utilize GitHub and Stack Overflow. In this paper, we present an exploratory study on GitHub commit and Stack Overflow post activities of GH-SO users. Specifically, we investigate the working habits of GH-SO users on GitHub commit and Stack Overflow post activities. We randomly selected 19,756 of GH-SO users as our target sample and collected 2,819,483 and 2,147,317 of commit activity data and post activity data of the GH-SO users. We then categorized the collected commit and post activity datasets into specific categories on programming languages and statistically analyzed the categorized commit and post activity datasets. As the results of our analysis, we found the following: (1) The overall commit and post activities of the GH-SO users share some similarity. (2) The commit activities gradually change while the post activities drastically change over time. (3) The commit activities of the GH-SO users are broadly distributed while the post activities are narrowly distributed and the commit activity can be better predictor for post activity. (4) The commit activity of the GH-SO users tends to be performed prior post activity. We believe that our findings can contribute to finding the ways to better support commit and post activities of GitHub and Stack Overflow users.

PLoS ONE ◽  
2020 ◽  
Vol 15 (12) ◽  
pp. e0243852
Author(s):  
Glaucia Melo ◽  
Toacy Oliveira ◽  
Paulo Alencar ◽  
Donald Cowan

Software developers need to cope with a massive amount of knowledge throughout the typical life cycle of modern projects. This knowledge includes expertise related to the software development phases (e.g., programming, testing) using a wide variety of methods and tools, including development methodologies (e.g., waterfall, agile), software tools (e.g., Eclipse), programming languages (e.g., Java, SQL), and deployment strategies (e.g., Docker, Jenkins). However, there is no explicit integration of these various types of knowledge with software development projects so that developers can avoid having to search over and over for similar and recurrent solutions to tasks and reuse this knowledge. Specifically, Q&A sites such as Stack Overflow are used by developers to share software development knowledge through posts published in several categories, but there is no link between these posts and the tasks developers perform. In this paper, we present an approach that (i) allows developers to associate project tasks with Stack Overflow posts, and (ii) recommends which Stack Overflow posts might be reused based on task similarity. We analyze an industry dataset, which contains project tasks associated with Stack Overflow posts, looking for the similarity of project tasks that reuse a Stack Overflow post. The approach indicates that when a software developer is performing a task, and this task is similar to another task that has been associated with a post, the same post can be recommended to the developer and possibly reused. We believe that this approach can significantly advance the state of the art of software knowledge reuse by supporting novel knowledge-project associations.


Author(s):  
Sebastian Baltes

AbstractAnalyzing and understanding software developers’ work habits and resulting needs is an essential prerequisite to improve software development practice. In our research, we utilize different qualitative and quantitative research methods to empirically investigate three underexplored aspects of software development: First, we analyze how software developers use sketches and diagrams in their daily work and derive requirements for better tool support. Then, we explore to what degree developers copy code from the popular online platform Stack Overflow without adhering to license requirements and motivate why this behavior may lead to legal issues for affected open source software projects. Finally, we describe a novel theory of software development expertise and identify factors fostering or hindering the formation of such expertise. Besides, we report on methodological implications of our research and present the open dataset SOTorrent, which supports researchers in analyzing the origin, evolution, and usage of content on Stack Overflow. The common goal for all studies we conducted was to better understand software developers’ work practices. Our findings support researchers and practitioners in making data-informed decisions when developing new tools or improving processes related to either the specific work habits we studied or expertise development in general.


Author(s):  
Romulo Nascimento ◽  
Eduardo Figueiredo ◽  
Andre Hora

Building an application using third-party libraries is a common practice in software development. As any other software system, code libraries and their APIs evolve over time. In order to help version migration and ensure backward compatibility, a recommended practice during development is to deprecate API. Although studies have been conducted to investigate deprecation in some programming languages, such as Java and C#, there are no detailed studies on API deprecation in the JavaScript ecosystem. The goal of this master research work is to investigate deprecation of JavaScript APIs. In a first assessment, we analyzed popular software projects to identify API deprecation occurrences and classify them. We are now conducting a survey study with developers to understand their thoughts and experiences on JavaScript API deprecation. Lastly, we plan to develop a set of JavaScript API deprecation guidelines based on this master research result. Initial results suggest that the use of deprecation mechanisms in JavaScript packages is low. However, we were able to identify five different approaches that developers primarily use to deprecate APIs in the studied projects. Among these solutions, deprecation utility (i.e., any sort of function specially written to aid deprecation) and code comments are the most common practices in JavaScript. Finally, we found that the rate of helpful message is high: 67% of the deprecation occurrences have replacement messages to support developers when migrating APIs.


2019 ◽  
Author(s):  
Fabian Braesemann

The development of digital technologies such as Machine Learning can be described empirically as a co-evolving network based on online platform data. Here, we construct a network of technologies related to machine learning based on data from Stack Overflow, the world’s largest question-and-answer website for programming questions.1 This network reveals the changing centrality of machine learning topics, libraries, and related programming languages over time as the network links rewire when novel technologies are introduced. It thus allows for understanding the development of the field as combinatorial technological evolution, shaped by the replacement of older technologies by novel ones. The data can be used to test network models on innovation and novelty, and on creative destruction.


PLoS ONE ◽  
2021 ◽  
Vol 16 (6) ◽  
pp. e0253010
Author(s):  
Iraklis Moutidis ◽  
Hywel T. P. Williams

Question and answer (Q&A) websites are a medium where people can communicate and help each other. Stack Overflow is one of the most popular Q&A websites about programming, where millions of developers seek help or provide valuable assistance. Activity on the Stack Overflow website is moderated by the user community, utilizing a voting system to promote high quality content. The website was created on 2008 and has accumulated a large amount of crowd wisdom about the software development industry. Here we analyse this data to examine trends in the grouping of technologies and their users into different sub-communities. In our work we analysed all questions, answers, votes and tags from Stack Overflow between 2008 and 2020. We generated a series of user-technology interaction graphs and applied community detection algorithms to identify the biggest user communities for each year, to examine which technologies those communities incorporate, how they are interconnected and how they evolve through time. The biggest and most persistent communities were related to web development. In general, there is little movement between communities; users tend to either stay within the same community or not acquire any score at all. Community evolution reveals the popularity of different programming languages and frameworks on Stack Overflow over time. These findings give insight into the user community on Stack Overflow and reveal long-term trends on the software development industry.


2013 ◽  
Vol 42 (1) ◽  
pp. 117-123 ◽  
Author(s):  
Nicky Hartigan ◽  
Simon McCarthy-Jones ◽  
Mark Hayward

Background: Despite an increasing volume of cross-sectional work on auditory verbal hallucinations (hearing voices), there remains a paucity of work on how the experience may change over time. Aims: The first aim of this study was to attempt replication of a previous finding that beliefs about voices are enduring and stable, irrespective of changes in the severity of voices, and do not change without a specific intervention. The second aim was to examine whether voice-hearers’ interrelations with their voices change over time, without a specific intervention. Method: A 12-month longitudinal examination of these aspects of voices was undertaken with hearers in routine clinical treatment (N = 18). Results: We found beliefs about voices’ omnipotence and malevolence were stable over a 12-month period, as were styles of interrelating between voice and hearer, despite trends towards reductions in voice-related distress and disruption. However, there was a trend for beliefs about the benevolence of voices to decrease over time. Conclusions: Styles of interrelating between voice and hearer appear relatively stable and enduring, as are beliefs about the voices’ malevolent intent and power. Although there was some evidence that beliefs about benevolence may reduce over time, the reasons for this were not clear. Our exploratory study was limited by only being powered to detect large effect sizes. Implications for clinical practice and future research are discussed.


Sign in / Sign up

Export Citation Format

Share Document