Sitemap

A list of all the posts and pages found on the site. For you robots out there is an XML version available for digesting as well.

Pages

Posts

Teaching Moldable Development

11 minute read

Published:

Moldable Development is a way of developing software in which you build many, small custom tools to solve problems. This implies new tools and new associated skills. As with any new way of thinking, teaching can be challenging. In this session we go draw lessons from our experience of teaching Moldable Development in practice, including how it changes the teaching experience itself.

Mind the gap — 50 years of shortening feedback loops

26 minute read

Published:

On the occasion of the 50th BATbern event, it occurred to me that it has been roughly 50 years since I started programming. In that time I’ve seen quite a few advances in Software Engineering. I’d like to take this opportunity to reflect on how these advances have not only shortened feedback loops in software development processes, but also how they have enabled new possibilities for innovation.

portfolio

publications

A decade of code comment quality assessment: A systematic literature review

Published in Journal of Systems and Software, 2023

We present a Systematic Literature Review (SLR) of the last decade of research in SE.

Recommended citation: Pooja Rani and Arianna Blasi and Nataliia Stulova and Sebastiano Panichella and Alessandra Gorla and Oscar Nierstrasz, A decade of code comment quality assessment: A systematic literature review, Journal of Systems and Software, 195, January 2023. https://www.oscar.nierstrasz.org/files/publications/Rani22c-ADecadeOfCodeCommentQualityAssessment.pdf

EGAD: A moldable tool for GitHub Action analysis

Published in 14th International Conference on Mining Software Repositories (MSR 2023), 2023

We present our preliminary steps in building EGAD (Explorable GitHub Action Domain Model), a moldable domain-specific tool to depict and analyze detailed GA workflow data.

Recommended citation: Pablo Valenzuela-Toledo and Alexandre Bergel and Timo Kehrer and Oscar Nierstrasz, EGAD: A moldable tool for GitHub Action analysis, Proceedings of the 14th International Conference on Mining Software Repositories (MSR 23), 2023. https://scg.unibe.ch/archive/papers/Vale23a.pdf

Exploring GitHub Actions through EGAD: An Experience Report

Published in International Workshop on Smalltalk Technologies (IWST 23), 2023

We present our experience developing and using EGAD (Explorable GitHub Action Domain Model) and share valuable insights we gained. Our focus is on three key areas: (i) onboarding of Glamorous Toolkit (GT), (ii) creating a comprehensive and explorable domain model of GA, and (iii) highlighting the potential of EGAD as a research workbench.

Recommended citation: Pablo Valenzuela-Toledo and Alexandre Bergel and Timo Kehrer and Oscar Nierstrasz, Exploring GitHub Actions through EGAD: An Experience Report, IWST 23: Proceedings of International Workshop on Smalltalk Technologies, 2023. https://scg.unibe.ch/archive/papers/Vale23b.pdf

talks

teaching

PEGs, Packrats and Parser Combinators

Guest lecture, University of Bern, 2023

This was a guest lecture held on April 6, 2023, and again on April 9, 2024 for the Masters course on Compiler Construction offered by Timo Kehrer at the University of Bern. The lecture provides an introduction to Parsing Expression Grammars, as a well as a live demo using the PetitParser framework to build an interpreter for a toy programming language.

A bit of Smalltalk

Guest lecture, University of Bern, 2023

This guest lecture for the Bachelors course, Programming 2 (introduction to object-oriented design) taught by Timo Kehrer, was given on May 20, 2022 at the University of Bern. (It is scheduled to be repeated on May 12, 2023.) The lecture consists of a live demo of the Smalltalk programming language in the Glamorous Toolkit environment. The lecture relies on a demo of the Ludo game which was the subject of students group work during the course. During the lecture we see two alternative implementations of the game and how their internal implementation is visualized and documented in the environment.