You are on page 1of 7

Received: 26 September 2019 Revised: 17 January 2020 Accepted: 13 February 2020

DOI: 10.1002/jee.20316

GUEST EDITORIAL

Toward computational apprenticeship: Bringing


a constructivist agenda to computational pedagogy

There is growing recognition of the need for computational pedagogy in science, technology, engineering, and mathematics
disciplines that emphasizes discipline-based computational modeling and simulation problem-solving processes (Dym,
2004; Froyd, Wankat, & Smith, 2012; Magana, Falk, & Reese, 2013). Yet current research in this area remains largely defini-
tional and aspirational in nature (College Board, 2013; Grover & Pea, 2013; National Research Council, 2011). To date, there
are limited empirical studies on how best to support the development of computational skills in undergraduates (Kalelioglu,
Gülbahar, & Kukul, 2016). As a result, outside of computer science, many postsecondary students' exposure to computing
education remains siloed in introductory programming courses that lack integration with disciplinary content (Magana
et al., 2013; Magana & Silva Coutinho, 2017). Furthermore, current practice in early or even mid-degree undergraduate com-
putational education in engineering majors tends to focus heavily on the procedural and technical aspects of programming
knowledge and on the learning of specific programming languages rather than on the application of computation in problem
solving and design (Buitrago Flórez et al., 2017; Pears et al., 2007; Vihavainen, Airaksinen, & Watson, 2014).
These traditional instructional approaches adequately develop students' ability for near transfer—that is, the ability
to apply known computational techniques in common disciplinary contexts (Butler & Morgan, 2007). However, even
professional scientists and engineers struggle with far transfer, meaning the application of computational and data
science approaches to novel or unfamiliar disciplinary challenges (Heroux & Allen, 2016; Madamanchi, Cardella,
Glazier, & Umulis, 2018). Because the field of discipline-based computation is undertheorized, traditional instructional
approaches have typically defaulted to teaching the cognitive aspects of computation. To build transferable skills and
expertise, however, instructors can draw upon constructivist traditions by situating computation within disciplinary
contexts.
Researchers have previously investigated students' transfer of computational knowledge in engineering design
courses through the concept of “computational adaptive expertise” (McKenna, Linsenmeier, & Glucksberg, 2008,
p. 1). The growing relevance of computation in science and engineering disciplines suggests that computational
adaptive expertise can be applied even more broadly as a construct to guide computational pedagogy in a variety of
disciplines. We propose computational apprenticeship—an application of cognitive apprenticeship to discipline-
based computing education—as a constructivist research and practice model for developing computational adaptive
expertise.

1 | TOWARD ADAPTIVE EXPERTISE I N COMPUTATIONAL SCIENCE


A N D EN G I N EER IN G

Educational psychology has examined the concept of near and far transfers through the idea of adaptive expertise
(Hatano & Inagaki, 1986). This framework proposes that students fall into one of two “courses of expertise” as they
learn: routine expertise and adaptive expertise (Bransford, Brown, & Cocking, 2000, p. 262). Routine expertise is defined
by procedural knowledge, with an individual developing efficient skills in a task through long-term repetition and prac-
tice (Bransford et al., 2000). Adaptive expertise is characterized by broader conceptual understanding and by the ability
to innovate on known skills in a way that allows them to be transferred between contexts (Schwartz,
Bransford, & Sears, 2005). Consequently, adaptive experts are able to quickly adjust to new disciplinary problems and
challenges (Hatano & Inagaki, 1986). Therefore, rather than being driven primarily by conceptual knowledge, adaptive
expertise is a combination of procedural knowledge, conceptual knowledge, and the ability to transfer that body of
knowledge to new applications (Bransford et al., 2000).
In the context of postsecondary education, computational pedagogy has typically focused on teaching the technical
and more cognitive aspects of computation, but a case can be made that computational adaptive expertise is developed

J Eng Educ. 2020;1–7. wileyonlinelibrary.com/journal/jee © 2020 ASEE 1


2 GUEST EDITORIAL

most effectively through constructivist methods (Ben-Ari, 1998; Thevathayan & Hamilton, 2015). However, constructivist
approaches require new instructional methods for incorporating computation in the classroom. As opposed to teaching
computation in an abstract, nongrounded way, skills associated with computational thinking can be anchored and made
visible through real-world situations and problem solving. This approach treats computational modeling and simulation
as an integrated set of disciplinary skills required to solve modern science and engineering problems rather than as a col-
lection of tangential competencies to be acquired along the way.

2 | C O M P U T A T IO N A L A PP R E N T I C E S H I P A S A M O D E L

In many trades, the apprenticeship model is used to train individuals in the knowledge and skills needed for their
profession. Apprentices observe instructors as they engage in expert practice and learn, in context, the key methods of
their discipline. The apprentices then hone their skills through a process of “legitimate peripheral participation”
(Lave & Wenger, 1991, p. 27), where learners are encouraged to put their new knowledge into practice in real-world
contexts. These activities are often guided or monitored by the instructor to reduce inherent risks of untrained practice
(i.e., peripheral) while still allowing for participation in “real” (i.e., legitimate) components of the trade or discipline
and engagement with peers within their community of practice.
Collins, Brown, and Newman (1988) proposed cognitive apprenticeship as a constructivist framework for teaching
complex skills within modern academic topics by using apprenticeship methods to make expert processes visible. The cog-
nitive apprenticeship framework separates the design of a learning environment into four key dimensions: content,
method, sequencing, and sociology. With this framework in mind, we delineate a new type of cognitive apprenticeship—a
computational apprenticeship—intended to build computational adaptive expertise.
The computational apprenticeship framework, therefore, suggests that computation be taught in context as an
important disciplinary skill (Magana, Fennell, Vieira, & Falk, 2019; Magana & Silva Coutinho, 2017). However,
discipline-based computing instruction introduces unique challenges because we are doubling the content dimension
of the apprenticeship model by asking students to learn two fields at once (Magana et al., 2013; Magana,
Brophy, & Bodner, 2012). To achieve this symbiosis between computational and disciplinary content, the computational
material should be grounded in discipline-relevant computational reasoning skills (Magana et al., 2012; Magana & Silva
Coutinho, 2017) rather than in the specifics of programming concepts or languages. In other words, the guiding prin-
ciple should be computational pedagogy that supports meaningful learning of the disciplinary material.
This formulation of a computational apprenticeship framework emerges from recent research (see Table 1) in
which elements of cognitive apprenticeship were used to incorporate computational methods into undergraduate science
and engineering courses. Such efforts have introduced students to meaningful computational practices through a series
of discipline-situated programming projects.
The computational apprenticeship model helps prepare students to address unfamiliar computational problems in
their respective fields by making visible the thinking and experience of experts in the discipline throughout the learning
process. Rather than just developing applicable skills, the computational apprenticeship framework builds overarching
computational capabilities by providing the learner with a discipline-situated environment that reflects the knowledge
structures, disciplinary practices, and hands-on experience needed to turn knowledge and skills into flexible capabilities.

3 | N E W RE S E A R C H DI R E C T I O N S

In the constructivist tradition, the computational apprenticeship framework emphasizes the importance of the
classroom learning environment and, therefore, foregrounds contextual and sociological considerations in the study of
computational thinking and pedagogy. Computational apprenticeship offers a research and practice agenda focused on
continuous classroom improvement to facilitate instruction on 21st century skills.
Research methods such as design-based research and case study approaches provide ways in which computational
apprenticeships and computing education can be investigated in the classroom (Design-Based Research Collective,
2003; Magana, 2017; Yin, 2017). Conducting practitioner research using these approaches allows researchers to both
build computational pedagogy and study the application of computational apprenticeship within the classroom. A cur-
rent limitation of empirical studies in subjects such as computational thinking has been the difficulty in measuring and
assessing the computational skills gained. Existing methods for assessing computational thinking are limited to
GUEST EDITORIAL 3

T A B L E 1 Descriptions of the four computational apprenticeship dimensions with related discipline-based computational engineering
education research

Computational apprenticeship dimensions Related work


Content • Magana et al., 2013
Teaching disciplinary domain knowledge in combination with computational modeling and • Mansbach et al., 2016
simulation practices, techniques, and tools. The content dimension also includes • Magana & Silva Coutinho, 2017
instruction on expert modes of thinking relevant to how the discipline uses computation. • Magana, 2017
• Ortega-Alvarez, Sanchez, &
Magana, 2018
• Vieira, Magana, García, Jana, &
Krafcik, 2018
• Fennell et al., 2019
• Guzdial & Naimipour, 2019
Method • Guzdial, 1994
The ways in which material is delivered to learners, including scaffolding approaches such as • Yan, Vieira, & Magana, 2015
code snippets, test cases, and worked examples. Instructional methods can be made more • Vieira, Roy, Magana, Falk, &
adaptive and student-directed in computational settings through the use of software- Reese, 2016
realized scaffolding and online resources, platforms, and networks (GitHub, NanoHub, • Vieira, Magana, Roy, & Falk, 2019
Coursera, Code Academy, fast.ai).
Sequencing • Armoni, 2014
The order in which activities are presented to learners to make the learning process as • Shaikh, Magana, Vieira, &
natural as possible (i.e., increasing complexity, increasing diversity). Online tools and García, 2015
resources can also enable student-directed sequencing as learners can pick and choose • Viera, Magana, Roy, Falk, &
from available online resources. Reese, 2016
• Fennell, Coutinho, Magana,
Restrepo, & Zavattieri, 2017
Sociology • Choi & Hannafin, 1995
Utilizing anchored instruction by contextualizing the learning experiences within authentic • Alvarado, Dodds, & Libeskind-
tasks that occur in real-life contexts and establishing meaningful associations between Hadas, 2012
learning experiences and the knowledge, skills, and practices of a discipline. Sociology can • Magana, Falk, Vieira, & Reese, 2016
be uniquely enabled in computation by using online communities that provide support and
resources to learners (Stack Overflow, Reddit, language/platform-specific support forums).

taxonomies (Malyn-Smith & Lee, 2012; Weintrop et al., 2016) and computational thinking knowledge tests that focus
heavily on programming knowledge (Peteranetz, Flanigan, Shell, & Soh, 2017; Shell & Soh, 2013). Shifting the focus of
these assessments from near transfer of programming skills to broader, far transfer of computational problem-solving
capabilities will be instrumental in assessing the learning of computational competencies. Validated, broadly applicable
rubrics and tests to assess computational skills in a variety of disciplines are needed to support empirical study of the
computational apprenticeship framework.
In addition, longitudinal studies on the implementation of computational apprenticeship pedagogy are critical for
understanding the cumulative effects of these experiences on student outcomes. Forms of pedagogy, such as spiral cur-
riculum, have been reported as being useful for integrating skills such as computational modeling and simulation into
the classroom (Magana & Silva Coutinho, 2017). Understanding how computational apprenticeship can be used not
only in a specific class or instructional unit but also over an entire undergraduate curriculum is needed to fully investi-
gate the impact of this framework on the development of computational skills. Current studies often focus on the early
years of the undergraduate curriculum, but there is preliminary evidence suggesting that fading or reducing scaffolding,
such as that offered by computational apprenticeship, may lead to positive outcomes for upper division undergraduate
students as well (Lyon, Magana, & Okos, 2019). Furthermore, the application of these approaches in workforce
development and continuing education contexts is an area of much needed study.
The presence of persistent racial, gender, and socioeconomic disparities in participation remains a critical challenge
for computer science and computational disciplines (Ladner & Israel, 2016; Michell, Szorenyi, Falkner, & Szabo, 2017;
Scott, McAlear, Martin, & Koshy, 2017). Pioneering work from Hutchison, Follman, Sumpter, and Bodner (2006) sug-
gests that self-efficacy in computing among women students may be a valuable focus for intervention. We believe that
4 GUEST EDITORIAL

constructivist approaches for early and consistent exposure to computation can promote positive self-belief
(Magana et al., 2016). Furthermore, the use of cognitive apprenticeship within computing courses has been shown to
significantly reduce dropout rates (Vihavainen, Paksula, & Luukkainen, 2011). The computational apprenticeship
framework offers a perspective for understanding and addressing these issues. For example, several studies have dem-
onstrated that scaffolding computing instruction within authentic problem-solving contexts (as recommended by the
computational apprenticeship framework) can support the interest and achievement of underrepresented groups in
computing (Goode & Margolis, 2011; Kafai, Searle, Martinez, & Brayboy, 2014; Yardi & Bruckman, 2007). In addition,
seminal work at Harvey Mudd College has shown that interventions to change the social dimensions of the
learning experience, such as separating students according to experience level and interest, are critical for producing
environments conducive to broader participation in computing (Alvarado et al., 2012).
The social coding movement has produced Jupyter notebooks and other technological platform innovations, which
can be used to support computational apprenticeship in classroom and workforce settings. For example, free web ser-
vices such as Google Collaboratory or GlowScript provide browser-based coding environments, which can lower initial
barriers to programming. These platforms can facilitate the use of instructional approaches, such as fill-in-the-blank
and use-modify-create (Lee et al., 2011), that integrate sequencing into computational lessons. In addition, the ability to
comment and embed text markup can help make visible the heuristics and other metacognitive processes used by
experts during computational problem-solving processes (Vieira, Roy, et al., 2016; Vieira, Magana, et al., 2019). This use
of digital platforms to support learning parallels the “software-realized scaffolding” construct articulated by Guzdial
(1994, p. 1). Foregrounding these metacognitive processes may be particularly beneficial to students from lower socio-
economic backgrounds who may have fewer opportunities to participate in natural computational apprenticeships in
industry internships or through observation from their own social network. Furthermore, computational practices have
increasingly moved online over recent years, and an intriguing area of future study is the interpretation of these
learning tools through the prism of distributed cognition.
The computational apprenticeship approach integrates constructivist perspectives into computational pedagogy and
opens many new and exciting possibilities for both research and practice. Our hope is that this framework for teaching
computational skills through discipline-situated content will not only make instruction more effective but also more
broadly applicable to learners of all backgrounds.

A C K N O WL E D G M E N T S
This work was supported in part by the National Science Foundation through CAREER Award EEC No.1449238 and RIEF
Award EEC No.1830802. This material is also based on work supported by the National Science Foundation Graduate
Research Fellowship Program under Grant No. DGE-1842166. Any opinions, findings, and conclusions or recommendations
expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.

Hayden W. Fennell1
Joseph A. Lyon2
Aasakiran Madamanchi3
Alejandra J. Magana1,2

1
Computer and Information Technology, Purdue University, West Lafayette, Indiana
2
Engineering Education, Purdue University, West Lafayette, Indiana
3
Polytechnic Institute, Purdue University, West Lafayette, Indiana

Correspondence
Alejandra J. Magana, 401 N. Grant Street, West Lafayette, IN, 47906.
Email: admagana@purdue.edu

R EF E RE N C E S
Alvarado, C., Dodds, Z., & Libeskind-Hadas, R. (2012). Increasing women's participation in computing at Harvey Mudd College. ACM
Inroads, 3(4), 55–64. https://doi.org/10.1145/2381083.2381100
Armoni, M. (2014). Spiral thinking: K––12 computer science education as part of holistic computing education. ACM Inroads, 5(2), 31–33.
https://doi.org/10.1145/2614512.2614521
GUEST EDITORIAL 5

Ben-Ari, M. (1998). Constructivism in computer science education. ACM SIGCSE Bulletin, 30(1), 257–261. https://doi.org/10.1145/274790.
274308
Bransford, J. D., Brown, A. L., & Cocking, R. R. (2000). How people learn (Expanded ed.). Washington, DC: National Academy Press. https://
doi.org/10.17226/9853
Buitrago Flórez, F., Casallas, R., Hernández, M., Reyes, A., Restrepo, S., & Danies, G. (2017). Changing a generation's way of thinking:
Teaching computational thinking through programming. Review of Educational Research, 87(4), 834–860. https://doi.org/10.3102/
0034654317710096
Butler, M., & Morgan, M. (2007). Learning challenges faced by novice programming students studying high level and low feedback concepts.
Proceedings of the Ascilite Conference, Singapore. Retrieved from. http://www.ascilite.org.au/conferences/singapore07/procs/butler.pdf
Choi, J. I., & Hannafin, M. (1995). Situated cognition and learning environments: Roles, structures, and implications for design. Educational
Technology Research and Development, 43(2), 53–69. https://doi.org/10.1007/BF02300472
College Board. (2013). The College Board AP® computer science principles draft curriculum framework. Retrieved from http://media.
collegeboard.com/digitalServices/pdf/ap/compsci-principles-draft-cf-final.pdf
Collins, A., Brown, J. S., & Newman, S. E. (1988). Cognitive apprenticeship: Teaching the craft of reading, writing and mathematics.
Thinking: The Journal of Philosophy for Children, 8(1), 2–10. https://doi.org/10.5840/thinking19888129
Design-Based Research Collective. (2003). Design-based research: An emerging paradigm for educational inquiry. Educational Researcher, 32
(1), 5–8. https://doi.org/10.3102/0013189X032001005
Dym, C. L. (2004). Design, systems, and engineering education. International Journal of Engineering Education, 20(3), 305–312.
Fennell, H. W., & Coutinho, G. S., & Magana, A. J., & Restrepo, D., & Zavattieri, P. D. (2017), Enhancing student meaning-making of
threshold concepts via computation: The case of Mohr's Circle. Proceedings of the ASEE Annual Conference & Exposition, Columbus,
Ohio. Retrieved from https://peer.asee.org/28279, https://doi.org/10.18260/1-2-28279
Fennell, H. W., Lyon, J. A., Magana, A. J., Rebello, N. S., Rebello, C., & Piedrahita, Y. (2019). Designing hybrid physics labs: Combining sim-
ulation and experiment for teaching computational thinking in first-year engineering. Proceedings of the IEEE Frontiers in Education
Conference, Cincinnati, OH.
Froyd, J. E., Wankat, P. C., & Smith, K. A. (2012). Five major shifts in 100 years of engineering education. Proceedings of the IEEE, 100
(Special Centennial Issue), 1344-1360. https://doi.org/10.1109/JPROC.2012.2190167
Goode, J., & Margolis, J. (2011). Exploring computer science: A case study of school reform. ACM Transactions on Computing Education, 11
(2), 1–16. https://doi.org/10.1145/1993069.1993076
Grover, S., & Pea, R. (2013). Computational thinking in K–12: A review of the state of the field. Educational Researcher, 42(1), 38–43. https://
doi.org/10.3102/0013189X12463051
Guzdial, M. (1994). Software-realized scaffolding to facilitate programming for science learning. Interactive Learning Environments, 4(1),
1–44. https://doi.org/10.1080/1049482940040101
Guzdial, M., & Naimipour, B. (2019). Task-specific programming languages for promoting computing integration: A precalculus example.
Proceedings of the 19th Koli Calling International Conference on Computing Education Research, Kolli, Finland. Retrieved from https://
doi.org/10.1145/3364510.3364532
Hatano, G., & Inagaki, K. (1986). Two courses of expertise. In H. Stevenson, J. Azuma, & K. Hakuta (Eds.), Child development and education
in Japan (pp. 262–272). New York, NY: W.H. Freeman & Co.
Heroux, A. M., & Allen, G. (2016). Computational science and engineering software sustainability and productivity challenges workshop
report. Networking and Information Technology Research and Development Program, Arlington, VA. Retrieved from https://www.nitrd.
gov/PUBS/CSESSPWorkshopReport.pdf
Hutchison, M. A., Follman, D. K., Sumpter, M., & Bodner, G. M. (2006). Factors influencing the self-efficacy beliefs of first-year engineering
students. Journal of Engineering Education, 95(1), 39–47. https://doi.org/10.1002/j.2168-9830.2006.tb00876.x
Kafai, Y., Searle, K., Martinez, C., & Brayboy, B. (2014). Ethnocomputing with electronic textiles: Culturally responsive open design to
broaden participation in computing in American Indian youth and communities. Proceedings of the 45th ACM Technical Symposium on
Computer Science Education, Atlanta, GA. Retrieved from https://doi.org/10.1145/2538862.2538903
Kalelioglu, F., Gülbahar, Y., & Kukul, V. (2016). A framework for computational thinking based on a systematic research review. Modern
Computing, 4(3), 583–596.
Ladner, R. E., & Israel, M. (2016). Broadening participation: “For all” in “computer science for all.” Communications of the ACM, 59(9),
26–28. https://doi.org/10.1145/2971329
Lave, J., & Wenger, E. (1991). Situated learning: Legitimate peripheral participation. Cambridge, U.K.: Cambridge University Press.
Lee, I., Martin, F., Denner, J., Coulter, B., Allan, W., Erickson, J., … Werner, L. (2011). Computational thinking for youth in practice. ACM
Inroads, 2(1), 32–37. https://doi.org/10.1145/1929887.1929902
Lyon, J. A., & Magana, A. J., & Okos, M. R. (2019). Work in progress: Designing modeling-based learning experiences within a capstone engi-
neering course. Proceedings of the 2019 ASEE Annual Conference & Exposition, Tampa, FL. Retrieved from https://peer.asee.org/33604
Madamanchi, A., Cardella, M. E., Glazier, J. A., & Umulis, D. M. (2018). Factors mediating learning and application of computational
modeling by life scientists. Proceedings of the IEEE Frontiers in Education Conference, San Jose, CA. Retrieved from https://doi.org/10.
1109/FIE.2018.8659328
Magana, A. J. (2017). Modeling and simulation in engineering education: A learning progression. Journal of Professional Issues in Engineering
Education and Practice, 143(4), 1–19. https://doi.org/10.1061/(ASCE)EI.1943-5541.0000338
6 GUEST EDITORIAL

Magana, A. J., Brophy, S. P., & Bodner, G. M. (2012). Student views of engineering professors' technological pedagogical content knowledge
for integrating computational simulation tools in nanoscale science and engineering. International Journal of Engineering Education, 28
(5), 1033–1045.
Magana, A. J., Falk, M. L., & Reese, M. J., Jr. (2013). Introducing discipline-based computing in undergraduate engineering education. ACM
Transactions on Computing Education, 13(4), 1–22. https://doi.org/10.1145/2534971
Magana, A. J., Falk, M. L., Vieira, C., & Reese, M. J. (2016). A case study of undergraduate engineering students' computational literacy and
self-beliefs about computing in the context of authentic practices. Computers in Human Behavior, 61(1), 427–442. https://doi.org/10.
1016/j.chb.2016.03.025
Magana, A. J., Fennell, H. W., Vieira, C., & Falk, M. L. (2019). Characterizing the interplay of cognitive and metacognitive knowledge in
computational modeling and simulation practices. Journal of Engineering Education, 108(2), 276–303. https://doi.org/10.1002/jee.20264
Magana, A. J., & Silva Coutinho, G. (2017). Modeling and simulation practices for a computational thinking-enabled engineering workforce.
Computer Applications in Engineering Education, 25(1), 62–78. https://doi.org/10.1002/cae.21779
Malyn-Smith, J., & Lee, I. (2012). Application of the occupational analysis of computational thinking-enabled STEM professionals as a pro-
gram assessment tool. Journal of Computational Science Education, 3(1), 2–10. https://doi.org/10.22369/issn.2153-4136/3/1/1
Mansbach, R., Ferguson, A., Kilian, K., Krogstad, J., Leal, C., Schleife, A., … Herman, G. L. (2016). Reforming an undergraduate materials
science curriculum with computational modules. Journal of Materials Education, 38(3–4), 161–174.
McKenna, A., Linsenmeier, R., & Glucksberg, M. (2008). Characterizing computational adaptive expertise. Proceedings of the ASEE Annual
Conference & Exposition, Pittsburgh, PA. Retrieved from https://peer.asee.org/4415
Michell, D., Szorenyi, A., Falkner, K., & Szabo, C. (2017). Broadening participation not border protection: How universities can support
women in computer science. Journal of Higher Education Policy and Management, 39(4), 406–422. https://doi.org/10.1080/1360080X.
2017.1330821
National Research Council. (2011). Report of a workshop on the pedagogical aspects of computational thinking. Washington, D.C.: National
Academies Press. https://doi.org/10.17226/13170
Ortega-Alvarez, J. D., Sanchez, W., & Magana, A. J. (2018). Exploring undergraduate students' computational modeling abilities and concep-
tual understanding of electric circuits. IEEE Transactions on Education, 61(3), 204–213. https://doi.org/10.1109/TE.2018.2822245
Pears, A., Seidman, S., Malmi, L., Mannila, L., Adams, E., Bennedsen, J., … Paterson, J. (2007). A survey of literature on the teaching of intro-
ductory programming. ACM SIGCSE Bulletin, 39(4), 204–223. https://doi.org/10.1145/1345375.1345441
Peteranetz, M. S., Flanigan, A. E., Shell, D. F., & Soh, L. K. (2017). Computational creativity exercises: An avenue for promoting learning in
computer science. IEEE Transactions on Education, 60(4), 305–313. https://doi.org/10.1109/TE.2017.2705152
Schwartz, D. L., Bransford, J. D., & Sears, D. (2005). Innovation and efficiency in learning and transfer. In J. P. Mestre (Ed.), Transfer of
learning from a modern multidisciplinary perspective (pp. 1–51). Greenwich, CT: Information Age Publishing.
Scott, A., McAlear, F., Martin, A., & Koshy, S. (2017). Broadening participation in computing: Examining experiences of girls of color. ACM
Inroads, 8(4), 48–52. https://doi.org/10.1145/3149921
Shaikh, U., Magana, A. J., Vieira, C., & García, R. E. (2015). An exploratory study of the role of modeling and simulation in supporting or
hindering engineering students' problem-solving skills. Proceedings of the ASEE Annual Conference & Exposition, Seattle, WA. Retrieved
from https://peer.asee.org/23524
Shell, D. F., & Soh, L. K. (2013). Profiles of motivated self-regulation in college computer science courses: Differences in major versus
required non-major courses. Journal of Science Education and Technology, 22(6), 899–913. https://doi.org/10.1007/s10956-013-9437-9
Thevathayan, C., & Hamilton, M. (2015). Supporting diverse novice programming cohorts through flexible and incremental visual construc-
tivist pathways. Proceedings of the ACM Conference on Innovation and Technology in Computer Science Education, Vilnius, Lithuania.
Retrieved from https://doi.org/10.1145/2729094.2742609
Viera, C. M., Magana, A. J., Roy, A. M. Falk M. L., & Reese, M. J., Jr. (2016). Exploring undergraduate students' computational literacy
in the context of problem solving. The ASEE Computers in Education Journal, 7(1), 100–112. https://doi.org/10.18260/p.24081
Vieira, C., Magana, A. J., García, R. E., Jana, A., & Krafcik, M. (2018). Integrating computational science tools into a thermodynamics
course. Journal of Science Education and Technology, 27(4), 322–333. https://doi.org/10.1007/s10956-017-9726-9
Vieira, C., Magana, A. J., Roy, A., & Falk, M. L. (2019). Student explanations in the context of computational science and engineering educa-
tion. Cognition and Instruction, 37(2), 201–231. https://doi.org/10.1080/07370008.2018.1539738
Vieira, C., Roy, A., Magana, A. J., Falk, M. L., & Reese, M. J. (2016), In-code comments as a self-explanation strategy for computational sci-
ence education. Proceedings of the ASEE Annual Conference & Exposition. New Orleans, LA: Retrieved from https://doi.org/10.18260/p.
25642.
Vihavainen, A., Airaksinen, J., & Watson, C. (2014). A systematic review of approaches for teaching introductory programming and their influ-
ence on success. Proceedings of the Tenth Annual Conference on International Computing Education Research, Glasgow, UK. Retrieved from
https://doi.org/10.1145/2632320.2632349
Vihavainen, A., Paksula, M., & Luukkainen, M. (2011). Extreme apprenticeship method in teaching programming for beginners. Proceedings
of the 42nd ACM Technical Symposium on Computer Science Education, Dallas, TX. Retrieved from https://doi.org/10.1145/1953163.
1953196
Weintrop, D., Beheshti, E., Horn, M., Orton, K., Jona, K., Trouille, L., & Wilensky, U. (2016). Defining computational thinking for
mathematics and science classrooms. Journal of Science Education and Technology, 25(1), 127–147. https://doi.org/10.1007/s10956-015-
9581-5
GUEST EDITORIAL 7

Yan, J., Vieira, C., & Magana, A. (2015). Exploring design characteristics of worked examples to support programming and algorithm design.
The Journal of Computational Science Education, 6(1), 2–15. https://doi.org/10.22369/issn.2153-4136/6/1/1
Yardi, S., & Bruckman, A. (2007). What is computing? Bridging the gap between teenagers' perceptions and graduate students' experiences.
Proceedings of the Third International Workshop on Computing Education Research, Atlanta, GA. Retrieved from https://doi.org/10.1145/
1288580.1288586
Yin, R. K. (2017). Case study research and applications: Design and methods. Thousand Oaks, CA: Sage.

You might also like