Marco D'Ambros

Collaborations with Marco D'Ambros

CodeLounge @ Software Institute, USI, Lugano

Projects

1 September 2022 Project

Institutional Foundations of Industrialization, Financialization, and Globalization of the Swiss Economy

Leveraging NLP and ML to transform historical corpora into structured geocoded data

Institutional Foundations of Industrialization, Financialization, and Globalization of the Swiss Economy
1 November 2024 Project PI

Sphere Two: Swiss Pavilion @ Expo 2025

An interactive art-science installation for the Swiss Pavilion at Expo 2025 that turns visitors' spoken wishes into floating soap bubbles.

Sphere Two: Swiss Pavilion @ Expo 2025
1 October 2022 Project

Software quality assessment for Justitia 4.0

In-depth analysis of a large software system from multiple perspectives

Software quality assessment for Justitia 4.0
1 July 2019 Project

Collecting and Visualizing Development Activities in Visual Studio Code

Tracking low-level IDE interaction events and transforming them into meaningful data to understand our own productivity

Collecting and Visualizing Development Activities in Visual Studio Code

Teaching and Training Activities

15 November 2019 Outreach

USI Hackathon 2019: Making Data Alive

A three-day hackathon held from 15 to 17 November 2019 in the Aula Magna of the [USI](https://www.usi.ch) campus in Lugano, organized by [CodeLounge](https://codelounge.si.usi.ch), the research and development group of the [Software Institute](https://si.usi.ch), with the support of [Ated4Kids](https://www.ated.ch/progetto_ated4kids.php) and [Lugano Living Lab](https://luganolivinglab.ch). I was part of the organizing team, led by Marco D'Ambros and Michele Lanza together with Mauro Prevostini and Elisa Larghi from the Faculty of Informatics, and with my CodeLounge colleagues Luca Ponzanelli, Davide Paolo Tua, Jesper Findahl, and Roberto Minelli. I also took the pictures of the event, collected in the [Flickr album](https://www.flickr.com/photos/185754239@N08/albums/72157711974256596/). All the details are on the [event website](https://hackathon.usi.ch).

Software

1 September 2022 Web App

REFLEX Data Pipeline & REFLEXplorer

The software backbone of the REFLEX project: a document-AI and NLP pipeline turning 140 years of scanned Swiss commercial registry into structured, geocoded data, and a web platform to explore it

1 July 2019 IDE Extension

Tako

A Visual Studio Code extension that records, aggregates, and visualizes IDE interaction data โ€” entirely on the developer's own machine

Tako
1 January 2018 Web App

MyUSI Platform

A modular platform for managing the academic life of a university: a GraphQL-based, actor-oriented backend and a component-based frontend, piloted on the research service

Theses & Projects

18 June 2026 Master Thesis Advised by them

FairLex: AI-Based Assistant for Legal Compliance and Sustainability Challenges in the Fashion Industry

Francesco De Vito ยท Master of Science in Software & Data Engineering

30 January 2025 Master Thesis Advised by them

Spatio-Temporal Visualization of Evolving Company Networks

Francesco Bresciani ยท Master of Science in Software & Data Engineering

19 June 2023 Master Thesis Advised by them

Modeling and Analyzing Time-Dependent Network of Firms

Federico Lombardo ยท Master of Science in Software & Data Engineering

19 June 2023 Master Thesis Advised by them

Mining A Century of Swiss Trademarks

Daniel Travaglia ยท Master of Science in Software & Data Engineering

17 June 2021 Master Thesis Advised by them

GITGLASS: Data Analysis and Visualization of Collaborative Development Platforms

Gabriele Zorloni ยท Master of Science in Software & Data Engineering

23 June 2020 Master Thesis Advised by them

SITRA - Simple Traffic: Support Decision-Making in a Real Context with Traffic Simulation

Valerie Burgener ยท Master of Science in Software & Data Engineering

23 June 2020 Master Thesis Advised by them

Characterizing and Visualizing Development Fragmentation with Interaction Data

Aldo Gabriele Di Rosa ยท Master of Science in Software & Data Engineering

23 January 2020 Master Thesis Advised by them

Viralscale: Leveraging Virality to Predict and React to Traffic Spikes

Lucas Pennati ยท Master of Science in Software & Data Engineering

21 June 2019 Bachelor Project Advised by them

Testing Modern Web Applications Written in TypeScript and React

Armend Azizi ยท Bachelor of Science in Informatics

Co-Authored Publications

27 August 2025 Paper
9087 words ยท 46 minutes

Mining a Century of Swiss Trademark Data

This paper presents an approach for extracting trademark registration events from the Swiss Official Gazette of Commerce (SOGC), an official daily journal published by the Swiss Confederation since January 1883. Until 2001, the data is only available as scanned documents, which constitute the target dataset of this study. Our approach is composed of a chain of three steps based on state-of-the-art deep learning techniques. We leverage image classification to identify pages containing trademarks (macro segmentation); we apply object detection to identify the portion of the page corresponding to a registration event (micro segmentation); last, we perform information extraction using a document AI technique. We obtain a dataset of ca. 500,000 trademark registration events, extracted from a corpus of 430,000 pages. Each step of our workflow has relatively high accuracy: the macro and micro segmentation steps show precision and recall greater than 95% on a manually constructed dataset. The dataset offers a unique historical perspective on trademark registrations in Switzerland that is not available from any other source. Showcasing what can be achieved with the extracted information, we provide answers to a set of preliminary economics questions.

Mining a Century of Swiss Trademark Data
28 September 2020 Paper
7670 words ยท 39 minutes

Visualizing Interaction Data Inside & Outside the IDE to Characterize Developer Productivity

Work fragmentation is a common phenomenon in the workspace, and is detrimental to the actual work taking place. To measure and study the impact of work fragmentation in software development, several studies exploited interaction data, i.e., the data generated by the events performed by the developers in the IDE. However, the absence of information on activities performed outside the IDE could lead to a misclassification of development time. In fact, sometimes leaving the IDE is not an interruption of the task at hand, e.g., when consulting API documentation, or when discussing with colleagues in ad-hoc collaboration applications. In this paper, we propose Ferax, a data analytics platform that developers can leverage for retrospection and possibly to improve their productivity. The capabilities of Ferax are twofold: First, it extends Tako, a profiler to record IDE interaction data for Visual Studio Code, with information about which applications were used and which websites were visited. Second, to enable the understanding of productivity and interruptions on developer sessions, Ferax provides interactive visualizations that show the detailed sequence of events inside and outside the IDE, the switches the developer performs by classifying them as productive or possible interruptions, and the time distribution for application usage. As a preliminary evaluation of Ferax we have collected and analyzed real development sessions from a set of master students and two professional developers. We illustrate how a developer can leverage Ferax to characterize her usual habits, to elicit the impact of interruptions, and to better characterize sessions which were only apparently unproductive.

Visualizing Interaction Data Inside & Outside the IDE to Characterize Developer Productivity
2 October 2014 Paper
9677 words ยท 49 minutes

Quantitatively Exploring Non-code Software Artifacts

Most software engineering research focuses its analyses on source code, because correct, well designed, and efficient program code is the desired end output of software development. Nevertheless, source code is not the only constituent of software systems: Programs also comprise other types of artifacts, such as documentation, build system and configuration files, and graphics. These non-code artifacts only recently got the attention of researchers and are not yet investigated as a whole, but separately and with very specific aims. By taking a quantitative perspective, we look into non-code software artifacts to measure their role in software systems. We analyze 35 mature open-source software systems and we address exploratory questions such as: How many non-code software artifacts do software systems contain? How do they relate to source code? How much effort is put into producing and maintaining them? Our results show that a significant portion of systems is made of non-code artifacts, and that programmers spend a relevant part of their effort on non-code artifacts during the development process. Our analysis opens questions for future investigations.

Quantitatively Exploring Non-code Software Artifacts