2018 IEEE International Conference on Software Maintenance and Evolution (ICSME) 2018
DOI: 10.1109/icsme.2018.00031
|View full text |Cite
|
Sign up to set email alerts
|

Gistable: Evaluating the Executability of Python Code Snippets on GitHub

Abstract: Software developers create and share code online to demonstrate programming language concepts and programming tasks. Code snippets can be a useful way to explain and demonstrate a programming concept, but may not always be directly executable. A code snippet can contain parse errors, or fail to execute if the environment contains unmet dependencies.This paper presents an empirical analysis of the executable status of Python code snippets shared through the GitHub gist system, and the ability of developers fami… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

2
52
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
5
2

Relationship

2
5

Authors

Journals

citations
Cited by 32 publications
(60 citation statements)
references
References 19 publications
2
52
0
Order By: Relevance
“…McIntosh et al agree that build maintenance imposes a large overhead on developers [22]. Yang et al [7] evaluate Python code snippets, as do Horton and Parnin [3]. They find that Python code snippets are not executable by default due to configuration errors, and Horton and Parnin additionally highlight the difficulty of correct configuration, of which inferring correct dependency versions ranks highly.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…McIntosh et al agree that build maintenance imposes a large overhead on developers [22]. Yang et al [7] evaluate Python code snippets, as do Horton and Parnin [3]. They find that Python code snippets are not executable by default due to configuration errors, and Horton and Parnin additionally highlight the difficulty of correct configuration, of which inferring correct dependency versions ranks highly.…”
Section: Related Workmentioning
confidence: 99%
“…Although these works demonstrate that configuration of dependencies is a frequent cause of build and execution failure, and that developers have need of better tooling support of versions [27], [28], [29], [30], no study attempts to uncover instances of configuration drift automatically. Horton and Parnin do classify 15 code snippets which have drifted and only execute successfully with an older version of a dependency (Table II from Gistable [3]), but this classification was performed by manually generating configuration scripts.…”
Section: Related Workmentioning
confidence: 99%
“…Seo et al also found that approximately 1 https://gist.github.com/1cdd9646046ae10c2932 2 https://github.com/getsentry/raven-python/issues/1075 50% of build errors are caused by dependencies [7]. Further, the effort involved in manually constructing an environment specification is non-trivial -developers can spend between 20 minutes and 2 hours creating a Dockerfile for a single code snippet, and often fail to construct a valid specification [6]. Common challenges include mapping a code resource to its originating package and determining the correct order of installation for transitive dependencies.…”
Section: Introductionmentioning
confidence: 99%
“…To evaluate DockerizeMe, we performed environment configuration for 2,891 gists from the Gistable dataset which still failed due to Python's ImportError after applying Gistable's Environment Inference Algorithm (Section III-C from [6]). DockerizeMe successfully removed import errors for 892 gists.…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation