921 research outputs found
Attribution Required: Stack Overflow Code Snippets in GitHub Projects
Stack Overflow (SO) is the largest Q&A website for developers, providing a
huge amount of copyable code snippets. Using these snippets raises various
maintenance and legal issues. The SO license requires attribution, i.e.,
referencing the original question or answer, and requires derived work to adopt
a compatible license. While there is a heated debate on SO's license model for
code snippets and the required attribution, little is known about the extent to
which snippets are copied from SO without proper attribution. In this paper, we
present the research design and summarized results of an empirical study
analyzing attributed and unattributed usages of SO code snippets in GitHub
projects. On average, 3.22% of all analyzed repositories and 7.33% of the
popular ones contained a reference to SO. Further, we found that developers
rather refer to the whole thread on SO than to a specific answer. For Java, at
least two thirds of the copied snippets were not attributed.Comment: 3 pages, 1 figure, Proceedings of the 39th International Conference
on Software Engineering Companion (ICSE-C 2017), IEEE, 2017, pp. 161-16
UX Debt: Developers Borrow While Users Pay
Technical debt has become a well-known metaphor among software professionals,
illustrating how shortcuts taken during development can accumulate and become a
burden for software projects. In the traditional notion of technical debt,
software developers borrow from the maintainability and extensibility of a
software system for a short-term speed up in development time. In the future,
they are the ones who pay the interest in form of longer development times.
User experience (UX) debt, on the other hand, focuses on shortcuts taken to
speed up development at the expense of subpar usability, thus mainly borrowing
from user efficiency. Most research considers code-centric technical debt,
focusing on the implementation. With this article, we want to build awareness
for the often overlooked UX debt of software systems, shifting the focus from
the source code towards users. We outline three classes of UX debt that we
observed in practice: code-centric, architecture-centric, and process-centric
UX debt. In an expert survey, we validated those classes, with code-centric and
process-centric UX debt getting the strongest support. We discuss our
participants' feedback and present recommendations on how software development
teams can mitigate UX debt in their user-facing applications.Comment: 6 pages, 2 figures, Proceedings of the 17th International Conference
on Cooperative and Human Aspects of Software Engineering (CHASE 2024
- …