Exploring parallel programming knowledge in the novice

Parallel programming is a difficult task for programmers. Simplifying the learning of this job first requires that we understand what needs to be taught. Evaluating the novice and expert parallel programmer for their knowledge framework can aid in the transition. This exploratory study examines novices' assumptions about the difficulty of parallel programming. Novices in this pilot study were capable of understanding race conditions and mutual exclusion but had trouble determining the difficulty of scalability and division of tasks.