While coding, developers often think of the programs they write as higher level concepts rather than individual keystrokes. We propose the idea "code grouping" which hypothesizes that developers write code in various groups which are determined by a number of factors. Examples of these factors include time, cursor location, and line number. We hope to create an algorithm which can successfully create these groups from a user's edit history using simple rules and without semantic understanding of the code. To study this idea we wrote a program to track a user's edits in a coding document and record them in a log file. Using this program we ran a study with 25 participants to gather data about how they solved a simple coding question. We present findings on how well the aforementioned factors determine code grouping. Identifying an algorithm to form these groups could eventually lead to better tools within IDE's. More specifically, it could be used to make a more granular undo system, which could enable more intuitive, group-aware undo behavior.
Primary Speaker
Shane Mullahy
Faculty Sponsors
Chris Fernandes
Aaron Cass
Presentation Type
Faculty Department/Program
Faculty Division
Do You Approve this Abstract?
Approved
Time Slot
Topic
Moderator
Matthew Anderson