Opportunistic programming: how rapid ideation and prototyping occur in practice
At times, programmers work opportunistically, emphasizing speed and ease of development over code robustness and maintainability. They do this to prototype, ideate, and discover; to understand as quickly as possible what the right solution is. Despite its importance, opportunistic programming remain...
Saved in:
| Published in: | International Conference on Software Engineering 2008 Vol. 2008; no. 18 |
|---|---|
| Main Authors: | , , , |
| Format: | Journal Article |
| Language: | English |
| Published: |
12.05.2008
|
| ISBN: | 1605580341, 9781605580340 |
| ISSN: | 0270-5257 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Summary: | At times, programmers work opportunistically, emphasizing speed and ease of development over code robustness and maintainability. They do this to prototype, ideate, and discover; to understand as quickly as possible what the right solution is. Despite its importance, opportunistic programming remains poorly understood when compared with traditional software engineering. Through fieldwork and a laboratory study, we observed five characteristics of opportunistic programming: Programmers build software from scratch using high-level tools, often add new functionality via copy-and-paste, iterate more rapidly than in traditional development, consider code to be impermanent, and face unique debugging challenges because their applications often comprise many languages and tools composed without upfront design. Based on these characteristics, we discuss future research on tools for debugging, code foraging and reuse, and documentation that are specifically targeted at this style of development. |
|---|---|
| Bibliography: | SourceType-Scholarly Journals-2 ObjectType-Feature-2 ObjectType-Conference Paper-1 content type line 23 SourceType-Conference Papers & Proceedings-1 ObjectType-Article-3 |
| ISBN: | 1605580341 9781605580340 |
| ISSN: | 0270-5257 |
| DOI: | 10.1145/1370847.1370848 |

