Title :
Towards generalizing expert programmers´ suggestions for novice programmers
Author :
Ichinco, Michelle ; Zemach, Aaron ; Kelleher, Caitlin
Author_Institution :
Dept. of Comput. Sci. & Eng., Washington Univ. in St. Louis, St. Louis, MO, USA
Abstract :
Novice programmers may lack the experience to recognize opportunities to either improve their code or apply unfamiliar programming constructs. Yet, these opportunities are often clear to an experienced programmer. In this paper, we describe an exploratory study investigating 1) the potential value of the suggestions experienced programmers make to novice programmers and 2) the ways experienced programmers envision identifying other programs that would benefit from the same suggestion. The results of our study suggest that experienced programmers make suggestions that can introduce new programming constructs to novice programmers. The participants in our study most commonly made suggestions that improve the code quality of novice programs, rather than changing their output. Furthermore, experienced programmers could often state a simple heuristic rule to use in identifying other novice programs that would benefit from their suggestion. Participants were able to author the rules in pseudocode, mostly using combinations of iteration and comparison to find patterns of problematic code. However, based on a test implementation of a selected set of rules for these suggestions, we conclude that support for improving rules through review and community input will be valuable.
Keywords :
program diagnostics; crowdsourcing; expert programmers; heuristic rule; novice programmers; program identification; pseudocode; static code analysis; Animation; Educational institutions; Glass; Programming profession; Standards; crowdsourcing; independent learning; novice programming; static code analysis;
Conference_Titel :
Visual Languages and Human-Centric Computing (VL/HCC), 2013 IEEE Symposium on
Conference_Location :
San Jose, CA
DOI :
10.1109/VLHCC.2013.6645259