Hannafin, M., Land, S., and Oliver, K. (1999). Open learn-
ing environments: Foundations, methods, and mod-
els. Instructional-design theories and models: A new
paradigm of instructional theory, 2:115–140.
Henriksen, P. and K
¨
olling, M. (2004). Greenfoot: com-
bining object visualisation with interaction. In Com-
panion to the 19th annual ACM SIGPLAN conference
on Object-oriented programming systems, languages,
and applications, pages 73–82.
Irimia, A. (2001). Enhancing the introductory computer sci-
ence curriculum: C++ or java? Journal of Computing
Sciences in Colleges, 17(2):159–166.
Kahn, K. (1996). Toontalktm—an animated programming
environment for children. Journal of Visual Lan-
guages & Computing, 7(2):197–217.
K
¨
olling, M. and Henriksen, P. (2005). Game programming
in introductory courses with direct state manipulation.
In Proceedings of the 10th annual SIGCSE conference
on Innovation and technology in computer science ed-
ucation, pages 59–63.
Kynigos, C. and Latsi, M. (2007). Turtle’s navigation and
manipulation of geometrical figures constructed by
variable processes in a 3d simulated space. Informat-
ics Educ., 6(2):359–372.
Laakso, M.-J., Kaila, E., Rajala, T., and Salakoski, T.
(2008). Define and visualize your first programming
language. In 2008 Eighth IEEE International Confer-
ence on Advanced Learning Technologies, pages 324–
326. IEEE.
Lewis, M. C., Blank, D., Bruce, K., and Osera, P.-M.
(2016). Uncommon teaching languages. In Proceed-
ings of the 47th ACM Technical Symposium on Com-
puting Science Education, pages 492–493.
Lindoo, E. (2020). Results of using a multi-programming
language approach to decrease drop-fail rates in cs1.
Journal of Computing Sciences in Colleges, 36(2):31–
41.
Maloney, J. H., Peppler, K., Kafai, Y., Resnick, M., and
Rusk, N. (2008). Programming by choice: urban
youth learning programming with scratch. In Pro-
ceedings of the 39th SIGCSE technical symposium on
Computer science education, pages 367–371.
Mannila, L. and de Raadt, M. (2006). An objective compar-
ison of languages for teaching introductory program-
ming. In Proceedings of the 6th Baltic Sea conference
on Computing education research: Koli Calling 2006,
pages 32–37.
Matsumura, T. and Kuramitsu, K. (2016). A declarative
extension of parsing expression grammars for recog-
nizing most programming languages. Journal of In-
formation Processing, 24(2):256–264.
Minor, J. T. and Gewali, L. P. (2004). Pedagogical issues
in programming languages. In International Confer-
ence on Information Technology: Coding and Com-
puting, 2004. Proceedings. ITCC 2004., volume 1,
pages 562–565. IEEE.
Naveed, S., Sarim, M., and Nadeem, A. (2018). C in
cs1: Snags and viable solution. Mehran Univer-
sity Research Journal of Engineering & Technology,
37(1):1–14.
Papert, S. (1980). Mindstonns vol. 607. New York: Basic
Rooks.
Parker, K. R., Chao, J. T., Ottaway, T. A., and Chang, J.
(2006). A formal language selection process for intro-
ductory programming courses. Journal of Information
Technology Education: Research, 5(1):133–151.
PATTIS, R. (1981). Karel the robot john wiley & sons. New
York.
Serrano, M., Gallesio, E., and Loitsch, F. (2006). Hop: a
language for programming the web 2. 0. In OOPSLA
companion, pages 975–985.
Smith, C. and Rickman, J. (1976). Selecting languages for
pedagogical tools in the computer science curriculum.
ACM SIGCSE Bulletin, 8(3):39–47.
Sobral, S. R. (2019). Cs1: C, java or python? tips for a
conscious choice.
Sobral, S. R. (2020). The first programming language and
freshman year in computer science: characterization
and tips for better decision making. In World Confer-
ence on Information Systems and Technologies, pages
162–174. Springer.
Sobral, S. R. (2021). The old question: which programming
language should we choose to teach to program? In
International Conference on Advances in Digital Sci-
ence, pages 351–364. Springer.
Solomon, C. J. and Papert, S. (1976). A case study of a
young child doing turtle graphics in logo. In Proceed-
ings of the June 7-10, 1976, national computer con-
ference and exposition, pages 1049–1056.
Tharp, A. L. (1982). Selecting the “right” programming
language. ACM SIGCSE Bulletin, 14(1):151–155.
Van Haaster, K. and Hagan, D. (2004). Teaching and learn-
ing with bluej: an evaluation of a pedagogical tool. Is-
sues in Informing Science & Information Technology,
1.
Wainer, J. and Xavier, E. C. (2018). A controlled experi-
ment on python vs c for an introductory programming
course: Students’ outcomes. ACM Transactions on
Computing Education (TOCE), 18(3):1–16.
Wen, E., Warren, J., and Weber, G. (2020). Browservm:
Running unmodified operating systems and applica-
tions in browsers. In 2020 IEEE International Confer-
ence on Web Services (ICWS), pages 473–480. IEEE.
Wexelblat, R. L. (1979). First programming language: Con-
sequences (panel discussion). In ACM Annual Confer-
ence, page 259.
Zschaler, S., Demuth, B., and Schmitz, L. (2014). Sales-
point: A java framework for teaching object-oriented
software development. Science of Computer Pro-
gramming, 79:189–203.
CSEDU 2023 - 15th International Conference on Computer Supported Education
312