SearcharxivSearch

arXiv subjects

Johannes Wachs

Publications and source records attributed to Johannes Wachs.

At least 19 recordsLinked to original sources

The Changing Global Division of Labor in Software: Emergence and Diffusion of New Programming Skills across IT Hubs

With the rise of new industries, often new jobs emerge. Evolutionary Economic Geography and in particular Industry Life Cycle perspectives predict that these activities first emerge in a limited number of cities to then diffuse to other locations as job descriptions become more standardized. Here, we focus on a particularly important new industry: software development, an activity that is economically important, quickly changing, and has a pronounced spatial concentration in a small number of global IT hubs. We use an online database of over 60 million questions and answers about problems in software development that yields a longitudinal dataset of 237 software skills. By geo-locating 3 million posting users at regular intervals, we link these skills to cities worldwide. We find that, in spite of its digital nature, the software industry exhibits similar spatial regularities as previously observed in more traditional sectors. First, cities diversify into skills that are related to their existing ones. Second, new skills first emerge in cities with large and diversified software sectors, and later diffuse -- mostly unhindered by geographical distance -- to smaller cities specialized in closely related skills. We find suggestive but limited support for a windows of locational opportunity account: although even brand-new skills still emerge first in cities with strong prior specialization in related skills, concentrations of related activities impact less the emergence of new skills than the diffusion of existing ones.

cs.SI

Good Question! The Effect of Positive Feedback on Contributions to Online Public Goods

Online platforms where volunteers answer each other's questions are important sources of knowledge, yet participation is declining. We ran a pre-registered experiment on Stack Overflow, one of the largest Q&A communities for software development (N = 22,856), randomly assigning newly posted questions to receive an anonymous upvote. Within four weeks, treated users were 6.3% more likely to ask another question and 12.9% more likely to answer someone else's question. A second upvote produced no additional effect. The effect on answering was larger, more persistent, and still significant at twelve weeks. Next, we examine how much of these effects are due to algorithmic amplification, since upvotes also raise a question's rank and visibility. Algorithmic amplification is not important for the effect on asking additional questions, but it matters a lot for the effect on answering other questions. The increase in visibility increases the probability that another user provides an answer, and that experience appears to shift the poster toward broader community participation.

cs.SI

Using digital traces to analyze software work: skills, careers and programming languages

Recent waves of technological transformation are reshaping work in uncertain and hard-to-predict ways. However, jobs at the forefront of the digitizing economy offer an early glimpse of these changes and leave rich activity traces. We exploit such traces in tens of millions of Question and Answer posts on Stack Overflow for the creation of a fine-grained taxonomy of software skills to analyze human capital in the global software industry. Constructing a software skill space that maps relations among these skills reveals that real-world software jobs demand highly coherent skill sets and that programmers learn through a process of related diversification. The latter process often leads to the acquisition of lower-value skills. However, when programmers use Python they preferentially target higher-value skills, offering a potential explanation for Python's successful rise as a dominant general purpose language.

econ.GN

The Software Complexity of Nations

Despite the growing importance of the digital sector, research on economic complexity and its implications continues to rely mostly on administrative records, e.g. data on exports, patents, and employment, that have blind spots when it comes to the digital economy. In this paper we use data on the geography of programming languages used in open-source software to extend economic complexity ideas to the digital economy. We estimate a country's software economic complexity index (ECIsoftware) and show that it complements the ability of measures of complexity based on trade, patents, and research to account for international differences in GDP per capita, income inequality, and emissions. We also show that open-source software follows the principle of relatedness, meaning that a country's entries and exits in programming languages are partly explained by its current pattern of specialization. Together, these findings help extend economic complexity ideas and their policy implications to the digital economy.

econ.GN

Who is using AI to code? Global diffusion and impact of generative AI

Generative coding tools promise big productivity gains, but uneven uptake could widen skill and income gaps. We train a neural classifier to spot AI-generated Python functions in over 30 million GitHub commits by 170,000 developers, tracking how fast -- and where -- these tools take hold. Today, AI writes an estimated 29% of Python functions in the US, a modest and shrinking lead over other countries. We estimate that quarterly output, measured in online code contributions, has increased by 3.6% because of this. Our evidence suggests that programmers using AI may also more readily expand into new domains of software development. However, experienced programmers capture nearly all of these productivity and exploration gains, widening rather than closing the skill gap.

cs.CY

The dynamics of leadership and success in software development teams

From science to industry, teamwork plays a crucial role in knowledge production and innovation. Most studies consider teams as static groups of individuals, thereby failing to capture how the micro-dynamics of collaborative processes and organizational changes determine team success. Here, we leverage fine-grained temporal data on software development teams from three software ecosystems -- Rust, JavaScript, and Python -- to gain insights into the dynamics of online collaborative projects. Our analysis reveals an uneven workload distribution in teams, with stronger heterogeneity correlated with higher success, and the early emergence of a lead developer carrying out the majority of work. Moreover, we find that a sizeable fraction of projects experience a change of lead developer, with such a transition being more likely in projects led by inexperienced users. Finally, we show that leadership change is associated with faster success growth. Our work contributes to a deeper understanding of the link between team evolution and success in collaborative processes.

physics.soc-ph

Anchor Sponsor Firms in Open Source Software Ecosystems

Firms are intensifying their involvement with open source software (OSS), going beyond contributing to individual projects and releasing their own core technologies as OSS. These technologies, from web frameworks to programming languages, are the foundations of large and growing ecosystems. Yet we know little about how these anchor sponsors shape the behavior of OSS contributors. We examine Mozilla Corporation's role as incubator and anchor sponsor in the Rust programming language ecosystem, leveraging data on nearly 30,000 developers and 40,000 OSS projects from 2015 to 2022. When Mozilla abruptly exited Rust in August 2020, event-study models estimate a negative impact on ecosystem activity: a 9\% immediate drop in weekly commits and a 0.6 percentage point decline in trend. We observe an asymmetry in the shock's effects: former Mozilla developers and close collaborators continued contributing relatively quickly, whereas more distant developers showed reduced or ceased activity even six months later. An agent-based model of an OSS ecosystem with an anchor sponsor replicates these patterns. We also find a marked slowdown in new developers and projects entering Rust post-shock. Our results suggest that Mozilla served as a critical signal of Rust's quality and stability. Once withdrawn, newcomers and less-embedded developers were the most discouraged, raising concerns about long-term ecosystem sustainability.

cs.SE

The Dynamics of Innovation in Open Source Software Ecosystems

Software libraries are the elementary building blocks of open source software ecosystems, extending the capabilities of programming languages beyond their standard libraries. Although ecosystem health is often quantified using data on libraries and their interdependencies, we know little about the rate at which new libraries are developed and used. Here we study imports of libraries in 12 different programming language ecosystems within millions of Stack Overflow posts over a 15 year period. New libraries emerge at a remarkably predictable sub-linear rate within ecosystems per post. As a consequence, the distribution of the frequency of use of libraries in all ecosystems is highly concentrated: the most widely used libraries are used many times more often than the average. Although new libraries come out more slowly over time, novel combinations of libraries appear at an approximately linear rate, suggesting that recombination is a key innovation process in software. Newer users are more likely to use new libraries and new combinations, and we find significant variation in the rates of innovation between countries. Our work links the evolution of OSS ecosystems to the literature on the dynamics of innovation, revealing how ecosystems grow and highlighting implications for sustainability.

cs.SE

Heat, Health, and Habitats: Analyzing the Intersecting Risks of Climate and Demographic Shifts in Austrian Districts

The impact of hot weather on health outcomes of a population is mediated by a variety of factors, including its age profile and local green infrastructure. The combination of warming due to climate change and demographic aging suggests that heat-related health outcomes will deteriorate in the coming decades. Here, we measure the relationship between weekly all-cause mortality and heat days in Austrian districts using a panel dataset covering $2015-2022$. An additional day reaching $30$ degrees is associated with a $2.4\%$ increase in mortality per $1000$ inhabitants during summer. This association is roughly doubled in districts with a two standard deviation above average share of the population over $65$. Using forecasts of hot days (RCP) and demographics in $2050$, we observe that districts will have elderly populations and hot days $2-5$ standard deviations above the current mean in just $25$ years. This predicts a drastic increase in heat-related mortality. At the same time, district green scores, measured using $10\times 10$ meter resolution satellite images of residential areas, significantly moderate the relationship between heat and mortality. Thus, although local policies likely cannot reverse warming or demographic trends, they can take measures to mediate the health consequences of these growing risks, which are highly heterogeneous across regions, even in Austria.

cs.CY

Are Large Language Models a Threat to Digital Public Goods? Evidence from Activity on Stack Overflow

Large language models like ChatGPT efficiently provide users with information about various topics, presenting a potential substitute for searching the web and asking people for help online. But since users interact privately with the model, these models may drastically reduce the amount of publicly available human-generated data and knowledge resources. This substitution can present a significant problem in securing training data for future models. In this work, we investigate how the release of ChatGPT changed human-generated open data on the web by analyzing the activity on Stack Overflow, the leading online Q\&A platform for computer programming. We find that relative to its Russian and Chinese counterparts, where access to ChatGPT is limited, and to similar forums for mathematics, where ChatGPT is less capable, activity on Stack Overflow significantly decreased. A difference-in-differences model estimates a 16\% decrease in weekly posts on Stack Overflow. This effect increases in magnitude over time, and is larger for posts related to the most widely used programming languages. Posts made after ChatGPT get similar voting scores than before, suggesting that ChatGPT is not merely displacing duplicate or low-quality content. These results suggest that more users are adopting large language models to answer questions and they are better substitutes for Stack Overflow for languages for which they have more training data. Using models like ChatGPT may be more efficient for solving certain programming problems, but its widespread adoption and the resulting shift away from public exchange on the web will limit the open data people and models can learn from in the future.

cs.SI

Stress-testing Road Networks and Access to Medical Care

This research studies how populations depend on road networks for access to health care during crises or natural disasters. So far, most researchers rather studied the accessibility of the whole network or the cost of network disruptions in general, rather than as a function of the accessibility of specific priority destinations like hospitals. Even short delays in accessing healthcare can have significant adverse consequences. We carry out a comprehensive stress test of the entire Austrian road network from this perspective. We simplify the whole network into one consisting of what we call accessibility corridors, deleting single corridors to evaluate the change in accessibility of populations to healthcare. The data created by our stress test was used to generate an importance ranking of the corridors. The findings suggest that certain road segments and corridors are orders of magnitude more important in terms of access to hospitals than the typical one. Our method also highlights vulnerable municipalities and hospitals who may experience demand surges as populations are cut off from their usual nearest hospitals. Even though the skewed importance of some corridors highlights vulnerabilities, they provide policymakers with a clear agenda.

cs.SI

Understanding (Ir)rational Herding Online

Investigations of social influence in collective decision-making have become possible due to recent technologies and platforms that record interactions in far larger groups than could be studied before. Herding and its impact on decision-making are critical areas of practical interest and research study. However, despite theoretical work suggesting that it matters whether individuals choose who to imitate based on cues such as experience or whether they herd at random, there is little empirical analysis of this distinction. To demonstrate the distinction between what the literature calls "rational" and "irrational" herding, we use data on tens of thousands of loans from a well-established online peer-to-peer (p2p) lending platform. First, we employ an empirical measure of memory in complex systems to measure herding in lending. Then, we illustrate a network-based approach to visualize herding. Finally, we model the impact of herding on collective outcomes. Our study reveals that loan performance is not solely determined by whether the lenders engage in herding or not. Instead, the interplay between herding and the imitated lenders' prior success on the platform predicts loan outcomes. In short, herds led by expert lenders tend to pick loans that do not default. We discuss the implications of this under-explored aspect of herding for platform designers, borrowers, and lenders. Our study advances collective intelligence theories based on a case of high-stakes group decision-making online.

cs.SI

Digital Traces of Brain Drain: Developers during the Russian Invasion of Ukraine

The Russian invasion of Ukraine has caused large scale destruction, significant loss of life, and the displacement of millions of people. Besides those fleeing direct conflict in Ukraine, many individuals in Russia are also thought to have moved to third countries. In particular the exodus of skilled human capital, sometimes called brain drain, out of Russia may have a significant effect on the course of the war and the Russian economy in the long run. Yet quantifying brain drain, especially during crisis situations is generally difficult. This hinders our ability to understand its drivers and to anticipate its consequences. To address this gap, I draw on and extend a large scale dataset of the locations of highly active software developers collected in February 2021, one year before the invasion. Revisiting those developers that had been located in Russia in 2021, I confirm an ongoing exodus of developers from Russia in snapshots taken in June and November 2022. By November 11.1% of Russian developers list a new country, compared with 2.8% of developers from comparable countries in the region but not directly involved in the conflict. 13.2% of Russian developers have obscured their location (vs. 2.4% in the comparison set). Developers leaving Russia were significantly more active and central in the collaboration network than those who remain. This suggests that many of the most important developers have already left Russia. In some receiving countries the number of arrivals is significant: I estimate an increase in the number of local software developers of 42% in Armenia, 60% in Cyprus and 94% in Georgia.

cs.CY

Evolving Collaboration, Dependencies, and Use in the Rust Open Source Software Ecosystem

Open-source software (OSS) is widely spread in industry, research, and government. OSS represents an effective development model because it harnesses the decentralized efforts of many developers in a way that scales. As OSS developers work independently on interdependent modules, they create a larger cohesive whole in the form of an ecosystem, leaving traces of their contributions and collaborations. Data harvested from these traces enable the study of large-scale decentralized collaborative work. We present curated data on the activity of tens of thousands of developers in the Rust ecosystem and the evolving dependencies between their libraries. The data covers seven years of developer contributions to Rust libraries and can be used to reconstruct the ecosystem's development history, such as growing developer collaboration networks or dependency networks. These are complemented by statistics on downloads and popularity, tracking the dynamics of use and success over time. Altogether the data give a comprehensive view of several dimensions of the ecosystem.

cs.SE

Specialization in Criminal Careers

We use a comprehensive longitudinal dataset on criminal acts over five years in a European country to study specialization in criminal careers. We cluster crime categories by their relative co-occurrence within criminal careers, deriving a natural, data-based taxonomy of criminal specialization. Defining specialists as active criminals who stay within one category of offending behavior, we study their socio-demographic attributes, geographic range, and positions in their collaboration networks, relative to their generalist counterparts. In comparison to generalists, specialists tend to be older, more likely to be female, operate within a smaller geographic range, and collaborate in smaller, more tightly-knit local networks. We observe that specialists are more intensely embedded in criminal networks and find evidence that specialization indeed reflects division of labor and organization.

physics.soc-ph

Modeling Interconnected Social and Technical Risks in Open Source Software Ecosystems

Open source software ecosystems consist of thousands of interdependent libraries, which users can combine to great effect. Recent work has pointed out two kinds of risks in these systems: that technical problems like bugs and vulnerabilities can spread through dependency links, and that relatively few developers are responsible for maintaining even the most widely used libraries. However, a more holistic diagnosis of systemic risk in software ecosystem should consider how these social and technical sources of risk interact and amplify one another. Motivated by the observation that the same individuals maintain several libraries within dependency networks, we present a methodological framework to measure risk in software ecosystems as a function of both dependencies and developers. In our models, a library's chance of failure increases as its developers leave and as its upstream dependencies fail. We apply our method to data from the Rust ecosystem, highlighting several systemically important libraries that are overlooked when only considering technical dependencies. We compare potential interventions, seeking better ways to deploy limited developer resources with a view to improving overall ecosystem health and software supply chain resilience.

cs.SE

Making Markets for Information Security: The Role of Online Platforms in Bug Bounty Programs

Security is an essential cornerstone of functioning digital marketplaces and communities. If users doubt that data shared online will remain secure, they will withdraw from platforms. Even when firms take these risks seriously, security expertise is expensive and vulnerabilities are diverse in nature. Increasingly, firms and governments are turning to bug bounty programs (BBPs) to crowdsource their cybersecurity, in which they pay individuals for reporting vulnerabilities in their systems. And while the use of BBPs has grown significantly in recent years, research on the actors in this market and their incentives remains limited. Using the lens of transaction cost economics, this paper examines the incentives of firms and researchers (sometimes called hackers) participating in BBPs. We study the crucial role that centralized platforms that organize BBPs play in this emerging market. We carry out an analysis of the HackerOne BBP platform, using a novel dataset on over 14,000 researchers reporting over 125,000 public vulnerabilities to over 500 firms from 2014 to the end of 2021. We outline how platforms like HackerOne make a market for information security vulnerabilities by reducing information asymmetries and their associated transaction costs.

cs.CR

Computational Approaches to the Study of Corruption

Studying corruption presents unique challenges. Recent work in the spirit of computational social science exploits newly available data and methods to give a fresh perspective on this important topic. In this chapter we highlight some of these works, describing how they provide insights into classic social scientific questions about the structure and dynamics of corruption in society from micro to macro scales. We argue that corruption is fruitfully understood as a collective action problem that happens between embedded people and organizations. Computational methods like network science and agent-based modeling can give insights into such situations. We also present various (big) data sources that have been exploited to study corruption. We conclude by highlighting work in adjacent fields, for instance on the problems of collusion, tax evasion, organized crime, and the darkweb, and promising avenues for future work.

physics.soc-ph