{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:26:04Z","timestamp":1750220764094,"version":"3.41.0"},"reference-count":35,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2020,9,9]],"date-time":"2020-09-09T00:00:00Z","timestamp":1599609600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Comput. Educ."],"published-print":{"date-parts":[[2020,9,30]]},"abstract":"<jats:p>There are many paradigms available to address the unique and complex problems introduced with parallel programming. These complexities have implications for computer science education as ubiquitous multi-core computers drive the need for programmers to understand parallelism. One major obstacle to student learning of parallel programming is that there is very little human factors evidence comparing the different techniques to one another, so there is no clear direction on which techniques should be taught and how. We performed a randomized controlled trial using 88 university-level computer science student participants performing three identical tasks to examine the question of whether or not there are measurable differences in programming performance between two paradigms for concurrent programming: threads compared to process-oriented programming based on Communicating Sequential Processes. We measured both time on task and programming accuracy using an automated token accuracy map (TAM) technique. Our results showed trade-offs between the paradigms using both metrics and the TAMs provided further insight about specific areas of difficulty in comprehension.<\/jats:p>","DOI":"10.1145\/3401892","type":"journal-article","created":{"date-parts":[[2020,9,11]],"date-time":"2020-09-11T03:21:07Z","timestamp":1599794467000},"page":"1-28","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Analysis of a Randomized Controlled Trial of Student Performance in Parallel Programming using a New Measurement Technique"],"prefix":"10.1145","volume":"20","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8601-0650","authenticated-orcid":false,"given":"Patrick","family":"Daleiden","sequence":"first","affiliation":[{"name":"University of Nevada, Las Vegas, NV"}]},{"given":"Andreas","family":"Stefik","sequence":"additional","affiliation":[{"name":"University of Nevada, Las Vegas, NV"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8182-9942","authenticated-orcid":false,"given":"P. Merlin","family":"Uesbeck","sequence":"additional","affiliation":[{"name":"University of Nevada, Las Vegas, NV"}]},{"given":"Jan","family":"Pedersen","sequence":"additional","affiliation":[{"name":"University of Nevada, Las Vegas, NV"}]}],"member":"320","published-online":{"date-parts":[[2020,9,9]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"2017. Alice. http:\/\/alice.org. 2017. Alice. http:\/\/alice.org."},{"key":"e_1_2_1_2_1","unstructured":"2017. Erlang Programming Language. https:\/\/www.erlang.org\/. 2017. Erlang Programming Language. https:\/\/www.erlang.org\/."},{"key":"e_1_2_1_3_1","unstructured":"2017. The Go Programming Languages: FAQ: Design. https:\/\/golang.org\/doc\/faq#csp. 2017. The Go Programming Languages: FAQ: Design. https:\/\/golang.org\/doc\/faq#csp."},{"key":"e_1_2_1_4_1","unstructured":"2017. The Go Programming Languages: FAQ: Origins. https:\/\/golang.org\/doc\/faq#Origins. 2017. The Go Programming Languages: FAQ: Origins. https:\/\/golang.org\/doc\/faq#Origins."},{"key":"e_1_2_1_5_1","unstructured":"2017. occam-pi in a nutshell. http:\/\/pop-users.org\/occam-pi\/. 2017. occam-pi in a nutshell. http:\/\/pop-users.org\/occam-pi\/."},{"key":"e_1_2_1_6_1","unstructured":"2017. Scratch. https:\/\/scratch.mig.edu. 2017. Scratch. https:\/\/scratch.mig.edu."},{"key":"e_1_2_1_7_1","unstructured":"2018. Quorum: Programming Languages and Learning. https:\/\/quorumlanguage.com\/evidence.html. 2018. Quorum: Programming Languages and Learning. https:\/\/quorumlanguage.com\/evidence.html."},{"key":"e_1_2_1_8_1","unstructured":"2018. The Scala Programming Language. https:\/\/www.scala-lang.org\/. 2018. The Scala Programming Language. https:\/\/www.scala-lang.org\/."},{"volume-title":"Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE\u201915)","author":"Altadmri Amjad","key":"e_1_2_1_9_1","unstructured":"Amjad Altadmri and Neil C. C. Brown . 2015. 37 million compilations: Investigating novice programming mistakes in large-scale student data . In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE\u201915) . ACM, New York, 522--527. DOI:https:\/\/doi.org\/10.1145\/2676723.2677258 10.1145\/2676723.2677258 Amjad Altadmri and Neil C. C. Brown. 2015. 37 million compilations: Investigating novice programming mistakes in large-scale student data. In Proceedings of the 46th ACM Technical Symposium on Computer Science Education (SIGCSE\u201915). ACM, New York, 522--527. DOI:https:\/\/doi.org\/10.1145\/2676723.2677258"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2839509.2844584"},{"volume-title":"Proceedings of the 10th Annual Conference on International Computing Education Research (ICER\u201914)","author":"Neil C.","key":"e_1_2_1_11_1","unstructured":"Neil C. C. Brown and Amjad Altadmri. 2014. Investigating novice programming mistakes: Educator beliefs vs. student data . In Proceedings of the 10th Annual Conference on International Computing Education Research (ICER\u201914) . ACM, New York, 43--50. DOI:https:\/\/doi.org\/10.1145\/2632320.2632343 10.1145\/2632320.2632343 Neil C. C. Brown and Amjad Altadmri. 2014. Investigating novice programming mistakes: Educator beliefs vs. student data. In Proceedings of the 10th Annual Conference on International Computing Education Research (ICER\u201914). ACM, New York, 43--50. DOI:https:\/\/doi.org\/10.1145\/2632320.2632343"},{"key":"e_1_2_1_12_1","volume-title":"Brown and Amjad Altadmri","author":"Neil C.","year":"2016","unstructured":"Neil C. C. Brown and Amjad Altadmri . 2016 . Novice Java programming mistakes: Large-scale data vs. educator beliefs. ACM Transactions on Computing Education (TOCE) ( 2016). Neil C. C. Brown and Amjad Altadmri. 2016. Novice Java programming mistakes: Large-scale data vs. educator beliefs. ACM Transactions on Computing Education (TOCE) (2016)."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2538862.2538924"},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the Compilation of the Co-located Workshops on DSM\u201911","author":"Castor Fernando","year":"2011","unstructured":"Fernando Castor , Jo\u00e3o Paulo Oliveira , and Andr\u00e9 L. M. Santos . 2011. Software transactional memory vs. locking in a functional language: A controlled experiment . In Proceedings of the Compilation of the Co-located Workshops on DSM\u201911 , TMC\u201911, AGERE! 2011 , AOOPES\u201911, NEAT\u201911, and VMIL\u201911. ACM, 117--122. Fernando Castor, Jo\u00e3o Paulo Oliveira, and Andr\u00e9 L. M. Santos. 2011. Software transactional memory vs. locking in a functional language: A controlled experiment. In Proceedings of the Compilation of the Co-located Workshops on DSM\u201911, TMC\u201911, AGERE! 2011, AOOPES\u201911, NEAT\u201911, and VMIL\u201911. ACM, 117--122."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/VLHCC.2015.7357223"},{"volume-title":"Empirical Study of Concurrency Programming Paradigms. Master\u2019s thesis","author":"Daleiden Patrick","key":"e_1_2_1_16_1","unstructured":"Patrick Daleiden . 2016. Empirical Study of Concurrency Programming Paradigms. Master\u2019s thesis . University of Nevada , Las Vegas , Las Vegas, NV. Patrick Daleiden. 2016. Empirical Study of Concurrency Programming Paradigms. Master\u2019s thesis. University of Nevada, Las Vegas, Las Vegas, NV."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2325296.2325318"},{"key":"e_1_2_1_18_1","doi-asserted-by":"crossref","unstructured":"The CONSORT Group. 9 Dec 2009. CONSORT 2010 Statement: Updated guidelines for reporting parallel group randomised trials. Section 8b. Randomisation: Type. http:\/\/www.consort-statement.org\/checklists\/view\/32--consort-2010\/87-randomisation-type. The CONSORT Group. 9 Dec 2009. CONSORT 2010 Statement: Updated guidelines for reporting parallel group randomised trials. Section 8b. Randomisation: Type. http:\/\/www.consort-statement.org\/checklists\/view\/32--consort-2010\/87-randomisation-type.","DOI":"10.1186\/1741-7015-8-18"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/359576.359585"},{"volume-title":"Communicating Sequential Processes","author":"Hoare C. A. R.","key":"e_1_2_1_20_1","unstructured":"C. A. R. Hoare . 1985. Communicating Sequential Processes . Prentice-Hall, Inc. , Upper Saddle River, N.J. C. A. R. Hoare. 1985. Communicating Sequential Processes. Prentice-Hall, Inc., Upper Saddle River, N.J."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2008.09.009"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/1288580.1288598"},{"key":"e_1_2_1_24_1","volume-title":"The Progress of Experiment: Science and Therapeutic Reform in the United States","author":"Marks Harry M.","year":"1900","unstructured":"Harry M. Marks . 2000. The Progress of Experiment: Science and Therapeutic Reform in the United States , 1900 -1990. Cambridge University Press . Harry M. Marks. 2000. The Progress of Experiment: Science and Therapeutic Reform in the United States, 1900-1990. Cambridge University Press."},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1016\/0022-2836(70)90057-4"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1989493.1989500"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2960310.2960319"},{"key":"e_1_2_1_28_1","volume-title":"Is transactional programming actually easier?ACM Sigplan Notices 45, 5","author":"Rossbach Christopher J.","year":"2010","unstructured":"Christopher J. Rossbach , Owen S. Hofmann , and Emmett Witchel . 2010. Is transactional programming actually easier?ACM Sigplan Notices 45, 5 ( 2010 ), 47--56. Christopher J. Rossbach, Owen S. Hofmann, and Emmett Witchel. 2010. Is transactional programming actually easier?ACM Sigplan Notices 45, 5 (2010), 47--56."},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-013-9286-4"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/2534973"},{"key":"e_1_2_1_31_1","unstructured":"U.S. Department of Education Institute of Education Sciences. 2010. What Works Clearinghouse Procedures and Standards Handbook (2.1 ed.). U.S. Department of Education. U.S. Department of Education Institute of Education Sciences. 2010. What Works Clearinghouse Procedures and Standards Handbook (2.1 ed.). U.S. Department of Education."},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/3017680.3017707"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2787622.2787721"},{"key":"e_1_2_1_34_1","volume-title":"International Conference on Computational Science. Springer, 695--708","author":"Welch Peter H.","year":"2002","unstructured":"Peter H. Welch , Jo R. Aldous , and Jon Foster . 2002 . CSP networking for Java (JCSP. net) . In International Conference on Computational Science. Springer, 695--708 . Peter H. Welch, Jo R. Aldous, and Jon Foster. 2002. CSP networking for Java (JCSP. net). In International Conference on Computational Science. Springer, 695--708."},{"key":"e_1_2_1_35_1","volume-title":"Sputh","author":"Welch Peter H.","year":"2007","unstructured":"Peter H. Welch , Neil C. C. Brown , James Moores , Kevin Chalmers , and Bernhard H. C . Sputh . 2007 . Integrating and extending JCSP. ( 2007). Peter H. Welch, Neil C. C. Brown, James Moores, Kevin Chalmers, and Bernhard H. C. Sputh. 2007. Integrating and extending JCSP. (2007)."},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2010.12.010"}],"container-title":["ACM Transactions on Computing Education"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3401892","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3401892","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:41:05Z","timestamp":1750200065000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3401892"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,9,9]]},"references-count":35,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2020,9,30]]}},"alternative-id":["10.1145\/3401892"],"URL":"https:\/\/doi.org\/10.1145\/3401892","relation":{},"ISSN":["1946-6226"],"issn-type":[{"type":"electronic","value":"1946-6226"}],"subject":[],"published":{"date-parts":[[2020,9,9]]},"assertion":[{"value":"2019-11-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2020-05-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2020-09-09","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}