Opportunistic Programming: Writing Code to Prototype, Ideate, and Discover

Joel Brandt, Philip J. Guo, Joel Lewenstein, Mira Dontcheva, and Scott R. Klemmer
IEEE Software, 2009
People often write code to prototype, ideate, and discover. To do this, they work opportunistically, emphasizing speed and ease of development over code robustness and maintainability. How do opportunistic programmers make these trade?offs, and how does the structure of their work compare to more formal software engineering practices? Opportunistic programmers build software using highlevel tools, and often add new functionality via copyandpaste from the Web. They iterate very rapidly, consider code impermanent, and find debugging particularly challenging.


This project is known for: opportunistic programming tools