Search papers, labs, and topics across Lattice.
This paper analyzes Stack Overflow posts to understand how developers combine programming languages in practice. They use frequent itemset mining (FP-Growth), topic modeling (LDA), and community detection (Louvain) on a co-usage graph to identify language couplings, developer specializations, and ecosystem structure. The analysis reveals distinct developer profiles (e.g., Apple-platform developers, scientific programmers) and three macro-communities: web/enterprise, Apple ecosystem, and systems/scientific, with Java acting as a central hub.
Discover how programming languages cluster into distinct developer ecosystems, revealing hidden relationships and specializations within the software world.
Understanding how developers combine programming languages in practice reveals the hidden structure of the software ecosystem: which languages are used as complements, which define coherent technology stacks, and which bridge disparate communities. We present a three-phase empirical pipeline that mines Stack Overflow posts by hundreds of thousands of developers across 186 programming languages, applying FP-Growth frequent itemset mining, Latent Dirichlet Allocation topic modeling, and Louvain community detection on a weighted co-usage graph, with the goal of characterizing co-usage coupling, latent developer specializations, and macro-level ecosystem structure simultaneously from behavioral data. FP-Growth identifies tight coupling clusters such as shell/bash, Swift/Objective-C, and the C-family with lift values far exceeding what individual language popularity predicts. LDA produces 25 developer profiles including Apple-platform developers, scientific and hardware programmers, functional/academic programmers, and two distinct Unix scripting sub-profiles. Louvain partitions the language graph into three macro-communities: web/enterprise, Apple ecosystem, and systems/scientific, and identifies Java as the highest-degree hub connecting all three. All three methods independently converge on the same ecosystem structure, providing strong cross-method validation of the findings.