Source-linked AI summary
T(r)opical Islands: Visualizing & Understanding Socio-Technical Artifacts
Adam Štěpánek, Marco Raglianti, Vít Rusňák, Jan Byška, Barbora Kozlíková, Michele Lanza
TL;DR
GitHub socio-technical artifacts are valuable records of project evolution but fragmented, noisy, and distributed across stakeholder-specific channels. The paper presents RITGARD, a machine-learning pipeline that clusters and labels these artifacts as interactive, vegetation-covered topic islands whose activity changes over time. Case studies and a 34-participant user study support the approach’s use for analyzing project features, problematic areas, and attention shifts, while clustering and embedding demands remain limitations.
Problem
GitHub socio-technical artifacts document project evolution but are noisy, fragmented across channels, and difficult to analyze as topics change over time.
Method
RITGARD mines, preprocesses, embeds, clusters, and LLM-labels GitHub STAs, rendering topics as islands and artifacts as trees whose terrain changes with activity.
Results
Case studies and a 34-participant user study support comprehensive analysis of project features, problematic areas, development habits, and shifting attention across a project’s lifetime.
Takeaways & Limitations
RITGARD can support developers learning projects, maintainers managing communities, and users uncovering problematic areas across communication channels.
Takeaways & Limitations
Results depend on clustering and computationally demanding embedding models, while less demanding models trade lower hardware requirements for less accurate clustering and topic names.
Abstract
from arXiv · showhide
Projects hosted on collaborative software development platforms, such as GitHub, include many non-code artifacts documenting the project's lifecycle, with its challenges, plans, design, and even community. These socio-technical artifacts include, for example, bug reports, feature requests, and forum posts, offering a useful prospect on the project's evolution. However, these artifacts are dispersed over multiple communication channels and written in natural language, making their analysis difficult, as they are fragmented and with considerable noise. We present a 3D visualization approach mapping topics found across a project's socio-technical artifacts onto vegetation-covered islands, where the individual artifacts are depicted as trees of various types. The topic islands rise out of the ocean as they become discussed, to sink again when they are no longer so. We built a prototype implementing the entire visualization pipeline, from data mining to interactive rendering, leveraging machine learning techniques to cluster the artifacts and extract their topics. We present, through several case studies, the insights that our approach elicits about discussions of development topics throughout a project's history. The user study we conducted (N=34) further strengthens our conclusions about its suitability for understanding socio-technical artifacts and their evolution.
I. INTRODUCTION
GitHub socio-technical artifacts document project evolution but are noisy, fragmented across channels, and change over time. The paper introduces RITGARD, which mines, clusters, labels, and visualizes these artifacts as evolving topic islands.
- Motivation: Issues, pull requests, and Discussions document project evolution, combining technical and social aspects as socio-technical artifacts.They record bugs, feature requests, code changes, conversations, rationale, plans, and community participation.
- Motivation: STAs are difficult to analyze because they are unstructured natural-language records dispersed across communication channels serving different stakeholders.Discussions target the community, PRs mainly developers, and Issues vary across projects.
- Motivation: Topics in these channels change over time, making it challenging to extract useful insights about project documentation and development.Early core-developer concerns may later become irrelevant.
- Approach: Topics become islands covered by artifact trees, with terrain height representing topic activity as islands rise when discussed and sink when discussion fades.The approach is intended to reveal problematic subjects and community conversation hotspots across project history.
- Contribution: The paper addresses a gap in holistic visual representations of GitHub STAs that capture their evolutionary time dimension.Prior STA documentation exists, but the authors identify this combined representation as missing.
- Approach: RITGARD mines GitHub STAs, preprocesses their text, generates embeddings, clusters artifacts, and uses an LLM to produce descriptive topic labels.The pipeline renders topics and artifacts interactively using a 3D island-and-tree metaphor.
A. Pre-Processing and Topic Modeling
RITGARD converts GitHub artifacts into semantically clustered topics and renders them as interactive islands, trees, and terrain. Spatial similarity, artifact type, closure status, and time-varying activity are encoded visually.
- A. Pre-Processing and Topic Modeling: Each artifact’s title, body, and comments are concatenated, cleaned of links, figures, tables, code, and Markdown, then optionally shortened to fit the embedding context.Labels are prepended to the resulting plain-text representation.
- A. Pre-Processing and Topic Modeling: RITGARD embeds artifacts with Qwen3-Embedding-8B, reduces dimensions with UMAP, clusters with HDBSCAN*, and extracts representative keywords using class-based TF-IDF.The topic-modeling workflow groups artifacts by semantic similarity before labeling clusters.
- A. Pre-Processing and Topic Modeling: An LLM labels each cluster from representative document titles, topic keywords, repository keywords, and few-shot examples.The resulting topic name becomes the island’s label.
- B. Turning GitHub STAs into Verdant Islands: Issues, PRs, and Discussions use distinct tree glyphs and colors, while closed, merged, or answered artifacts may appear as stubs.Tree positions derive from UMAP embeddings, so distance reflects semantic similarity, with small adjustments to avoid overlap.
- B. Turning GitHub STAs into Verdant Islands: Topic islands are generated from artifact positions and smoothed into terrain, while outlier artifacts classified by HDBSCAN* stand on separate rocks.The island polygons and heightmap provide the visual surface for clustered artifacts.
- B. Turning GitHub STAs into Verdant Islands: Island height encodes activity from artifact comments within a configurable sliding window, causing topics to rise during discussion and sink when inactive.Submerged island shapes can still indicate topics outside the selected active window.
- B. Turning GitHub STAs into Verdant Islands: The map area can represent repository size or editing activity, with changed LoC used in evaluation because it produced the most informative results.Changed LoC is cumulative patch size across commits and is comparable to the complete STA history.
- B. Turning GitHub STAs into Verdant Islands: The visualization supports zooming, panning, tilting, inspection, time navigation, and configurable sliding-window lengths.Users can open an artifact in a browser from the interactive view.
III. CASE STUDIES
The case studies examine RITGARD on JetUML, Lume, and Git for Windows to illustrate STA exploration across project types and scales. The studies use descriptive project statistics to frame these analyses.
- III. CASE STUDIES: RITGARD’s case studies analyze JetUML, Lume, and Git for Windows to illustrate STA evolutionary analysis.The projects support exploration of visualization insights across different project contexts.
- III. CASE STUDIES: Lume and JetUML were selected because some authors were familiar with them, while Git for Windows was selected based on the pipeline’s supported STA limit.The selection combines author familiarity with a large-project scalability consideration.
- III. CASE STUDIES: Table I reports descriptive statistics for the analyzed projects.These statistics provide the quantitative context for the case-study comparisons.
A. Lume: STAs in Static Project Snapshots
Lume’s snapshot shows how Issues, PRs, and Discussions distribute across project topics and reveal active conversations. Issues dominate, while PRs concentrate strongly on documentation and refactoring, and Discussions remain sparse.
- Issues are the dominant artifact type in Lume, followed by PRs and then Discussions.
- Issues produce the tallest peaks, with the highest reaching 25 comments across topics including Markdown, JSX, URL handling, localization, and the command-line interface.
- 80.0% of PRs concentrate on the “Plugin documentation and refactor” island, containing 67 PRs and 13 Issues.These are mostly minor documentation and plugin maintenance activities.
- Discussions are least common, with the longest containing five comments and the most active topics involving URL rendering, rendering internals, and pagination.
- The mixed artifact types and secluded “Responsive image plugin” island indicate that developers and users discuss technical features and desiderata together.
- A single snapshot makes artifacts from different communication channels easier to compare by topic and helps identify active conversations.
B. JetUML: STAs and Project Evolution
JetUML’s snapshots show a highly active early period followed by declining community participation, while continued PR activity indicates ongoing development. The visualization also exposes past topic activity through submerged landmasses, although representing closed artifacts remains unresolved.
- JetUML’s first snapshot shows high activity, with Issue-based development indicated by many Issues and PRs.
- The largest peak concerns adding a copypaste feature, while the largest landmass covers “JavaFX UI and Diagrams”; many PRs involve minor refactoring, bugs, and typos.
- Across later snapshots, community participation declines: landmasses disappear, few new topics emerge, and active STAs never return to the first snapshot’s level.
- At the end of 2024, JetUML remains actively developed through multiple discussed PRs despite reduced activity.
- GitHub Discussions are absent from nearly every snapshot and appear only in the final snapshot as a late, ineffective adoption of the feature.
- Submerged island regions convey past or future topic activity, but displaying closed STA stubs underwater proved too cluttered and requires further work.
- STA evolutionary analysis compares artifact activity across project phases and highlights how topics, attention, and discussion priorities change over time.
C. Git for Windows: STAs in the Large
The Git for Windows visualization scales to a large, long-lived repository while revealing persistent, recurring, and fine-grained development topics. It also exposes clustering limitations and the effects of project structure on the map.
- The fork produces extensive ocean because upstream Git issues are discussed on a mailing list rather than in the GitHub repository.
- Tall peaks mark highly active STAs and significant events, including debates over noninclusive naming and ARM64 support.Both example issues received over 150 comments, so island heights were normalized to a configurable maximum.
- Temporal visualization distinguishes persistently active Windows-specific and advanced-feature topics from issues that repeatedly re-emerge after long silences.
- The visualization connects project-scale patterns with detailed artifact stories, including issue-to-PR sequences and potentially overlooked unanswered discussions.
- In large repositories, thematically close artifacts can be positioned together despite belonging to different topics because clustering limitations intensify.
- Git for Windows demonstrates that STA analysis scales to large, long-lived repositories and reveals participation and engagement across development processes.
IV. USER STUDY
A 34-participant user study evaluated RITGARD’s interpretability, usefulness, playfulness, and scalability through snapshot, evolutionary, and large-scale tasks. Participants found basic analyses easy and the visualization useful, while readability decreased for larger projects and evolutionary navigation remained demanding.
- 34 participants evaluated RITGARD through snapshot, evolutionary, and large-scale tasks designed to assess interpretability and viability.
- Interpretability and Insights: More than 80% of participants found basic STA identification and topic-size comparison somewhat low effort or easier.Identification tasks averaged M = 1.89 and comparison tasks M = 2.09 on a six-point Likert scale, both significantly below midpoint.
- Evolutionary analysis was perceived as more demanding because participants repeatedly stepped through project history.Participants suggested adding a timeline to clarify the viewed timeframe and sliding-window movement.
- Playfulness: 22 respondents (65%) agreed that the island metaphor balances playfulness and readability, while perceived playfulness did not correlate with interpretation effort.Playfulness was rated M = 5.52, with Spearman ρ = −0.25 and p = 0.16 for its correlation with interpretation effort.
- Usefulness: Usefulness ratings were clearly above neutral, with strongest perceived applications in onboarding, development monitoring, project management, and maintenance.Usefulness averaged M = 4.11, Wilcoxon p < 0.001, r = 0.76.
- Scalability: Readability remained above neutral for small and large repositories but was significantly lower for large projects.Small repositories received M = 5.41 and large repositories M = 3.88; the paired Wilcoxon test gave p < 0.001.
- 23 participants (68%) considered RITGARD complementary to GitHub’s interface because it provides a high-level overview of project activity.
V. DISCUSSION
The discussion concludes that RITGARD supports comprehensive analysis of GitHub socio-technical artifacts, combining project-level readability with a playful representation of changing attention.
- RITGARD supports comprehensive analysis of a software project through its GitHub socio-technical artifacts.
- The visualization depicts main features, problematic areas, and team development habits while showing how attention shifts across the project’s lifetime.
- RITGARD balances readability and playfulness in representing software-project evolution.
A. Lessons Learned
The authors identify practical strengths and boundaries of RITGARD, emphasizing stakeholder value, clustering quality, project-dependent sizing, and limits of the island metaphor for topic health.
- RITGARD can help developers monitor community topics and overlooked artifacts, while giving newcomers a high-level view of project strengths, pain points, and activity.
- Visualization quality depends on STA clustering, so preprocessing and semantic embeddings are used to reduce artificial similarities and improve grouping.
- Changed lines of code are not an appropriate map-size metric for repositories with many artifacts but little code.For issue or proposal trackers, the metric can be disabled and visualization size adjusted automatically.
- Island appearance cannot distinguish an inactive topic from one not yet active, or explain why a tree’s artifact was closed.A submerged or barren island therefore indicates inactivity or closed artifacts, not necessarily an unhealthy topic.
B. Limitations and Future Work
The approach has conceptual, technical, scalability, and evaluation limitations, while future work targets broader platform support, richer artifact representations, source-code links, and improved usability.
- Technical limitations: Embedding and preprocessing choices constrain clustering quality, computational accessibility, and the completeness of represented artifacts.Embedding models may require GPU resources; templates are ignored, large artifacts may be truncated, and some case studies exclude bodies and comments.
- Data limitations: The data miner omits Discussion replies and ignores artifact reopenings, which can underrepresent conversations and lifecycle evolution.Discussions include only main comments, while closed artifacts retain only their final closure timestamp.
- Visualization limitations: Playful tree-based rendering can obscure terrain when artifact density is high, although users can hide trees.The interface provides a tree-hiding option when individual artifacts are less important.
- Prototype and evaluation limitations: RITGARD is a proof-of-concept with limited artifact capacity, and its user study may not represent broader practitioner populations or direct task performance.The study relied largely on participant perceptions and did not substitute for a direct task-based comparison with GitHub’s native interface.
- Future work: Future work includes mining additional platforms, more expressive tree glyphs, source-code connections, performance improvements, timeline controls, and better label placement.These extensions address platform coverage, information encoding, scalability, and user-experience concerns.
VI. RELATED WORK
Related work spans empirical studies of GitHub artifacts, topic and message modeling across platforms, landscape-based software visualizations, issue lifecycle depictions, and playful or gamified software-engineering interfaces.
- GitHub socio-technical artifacts: Prior GitHub research studied pull-based development, Discussions, automatic Issue classification, and the documentation potential of socio-technical artifacts.These studies establish GitHub artifacts as sources for understanding development practices and project documentation.
- Cross-platform artifact analysis: Research beyond GitHub has extracted topics from Stack Overflow, compared Gitter and Slack, and mined mailing lists to study developer ecosystems.The related work applies topic modeling, manual annotation, and machine learning across multiple communication platforms.
- Topic modeling: Topic modeling provides the central analytical foundation, using techniques developed to extract latent topics from natural-language text and increasingly supported by neural networks.The paper situates its approach within established topic-modeling research and surveys.
- Landscape-based visualization: Landscape metaphors have supported program comprehension through thematic maps, software forests, and 3D or virtual-reality islands representing software entities.These precedents motivate visual encodings that map software structure or semantics onto natural environments.
- Repository evolution: RITGARD differs from issue-tale visualizations by offering an evolutionary overview of whole repositories across multiple socio-technical artifact types.The comparison distinguishes repository-wide evolution from approaches focused mainly on individual Issue lifecycles.
- Gamification and playfulness: Tree glyphs and playful presentation connect RITGARD to gamification and playfulness in software engineering and program-comprehension visualization.Prior work includes frameworks for software-engineering game elements and gamified visualizations receiving positive player feedback.
VII. CONCLUSION
The paper presents RITGARD, which visualizes clustered GitHub socio-technical artifacts as evolving topic islands and trees. It provides multi-scale project insights, while remaining a prototype requiring optimization and user-experience improvements for practical use.
- Approach: RITGARD converts artifact embeddings into clusters, labels them with an LLM, and maps topics to islands whose terrain changes with discussion activity.Each socio-technical artifact appears as a tree, while island area represents repository size.
- Contributions and uses: The approach provides static and evolutionary insights at multiple granularities and can support developers, maintainers, and project users.The reported uses include learning about projects, managing communities, and uncovering problematic areas across communication channels.
- Reproducibility: The replication package includes datasets, study materials, participant responses, prompts, source code, a tutorial video, and RITGARD builds.These materials are provided to support verification and replication.