“I can learn everything online”: An Analysis of TikTok’s Notional Machines for Learning Programming

  • Maria Barbieri IFMS
  • Jamili Amaral IFMS
  • Rodrigo Duran IFMS

Abstract


Unsurprisingly, many instructors and students resort to non-formal educational spaces, especially video-based social networks such as TikTok, when tasked to learn to program, particularly when formal training is scarcely provided. However, it is unclear what kind of educational content such platforms provide to teachers and the quality of such content. In this work, we aim to alleviate this gap by investigating programming videos on TikTok extracting explanations – the Notional Machines – used by presenters. We analyzed 300 videos on these platforms to classify the Notional Machines used to explain topics such as variables, loops, conditionals, and functions. Our results show that, in general, the majority of the videos do not offer an explicit definition of concepts, or use shallow or “textbook” explanations, including some deemed dangerous in the literature. Unfortunately, we could not find new terminology or language that would allow educators to communicate with students from primary and secondary levels successfully. While more work is necessary to analyze a larger corpus of videos, we offer a cautionary tale for using unvetted content as a replacement for well-prepared learning materials.

References

Berry, M. and Kölling, M. (2013). The design and implementation of a notional machine for teaching introductory programming. In Proceedings of the 8th Workshop in Primary and Secondary Computing Education, WiPSE ’13, page 25–28, New York, NY, USA. Association for Computing Machinery.

Bettin, B. and Ott, L. (2023). Pedagogical prisms: Toward domain isomorphic analogy design for relevance and engagement in computing education. In Proceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 1, ITiCSE 2023, page 410–416, New York, NY, USA. Association for Computing Machinery.

Blikstein, P. and Moghadam, S. H. (2019). Computing education. The Cambridge handbook of computing education research, pages 56–78.

Bradbury, N. A. (2016). Attention span during lectures: 8 seconds, 10 minutes, or more? Cao, Y., Porter, L., and Zingaro, D. (2016). Examining the value of analogies in introductory computing. In Proceedings of the 2016 ACM Conference on International Computing Education Research, ICER ’16, page 231–239, New York, NY, USA. Association for Computing Machinery.

Chiodini, L., Moreno Santos, I., Gallidabino, A., Tafliovich, A., Santos, A. L., and Hauswirth, M. (2021). A curated inventory of programming language misconceptions. In Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1, ITiCSE ’21, page 380–386, New York, NY, USA. Association for Computing Machinery.

da Educação, M. (2022). Base nacional comum curricular: Computação, complemento à bncc.

de Estudos e Pesquisas Educacionais Anísio Teixeira (INEP), B. I. N. (2023). Censo escolar da educação básica 2022: Resumo técnico.

Dickson, P. E., Brown, N. C. C., and Becker, B. A. (2020). Engage against the machine: Rise of the notional machines as effective pedagogical devices. In Proceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education, ITiCSE ’20, page 159–165, New York, NY, USA. Association for Computing Machinery.

DiSessa, A. A. (2001). Changing minds: Computers, learning, and literacy. Mit Press.

DiSessa, A. A. (2018). A friendly introduction to “knowledge in pieces”: Modeling types of knowledge and their roles in learning. In Invited lectures from the 13th international congress on mathematical education, pages 65–84. Springer.

dos Santos, W. O., Silva, C., and Hinterholz, L. (2017). Licenciatura em computação: Desafios e oportunidades na perspectiva do estudante. In Anais do Workshop de Informática na Escola, volume 23, pages 885–894.

Du Boulay, B. (1986). Some difficulties of learning to program. Journal of Educational Computing Research, 2(1):57–73.

Duran, R., Bim, S. A., Gimenes, I., Ribeiro, L., and Correia, R. C. M. (2023). Potential factors for retention and intent to drop-out in brazilian computing programs. ACM Trans. Comput. Educ., 23(3).

Duran, R., Sorva, J., and Leite, S. (2018). Towards an analysis of program complexity from a cognitive perspective. In Proceedings of the 2018 ACM Conference on International Computing Education Research, ICER ’18, page 21–30, New York, NY, USA. Association for Computing Machinery.

Duran, R., Sorva, J., and Seppälä, O. (2021). Rules of program behavior. ACM Transactions on Computing Education (TOCE), 21(4):1–37.

Felleisen, M., Findler, R. B., Flatt, M., and Krishnamurthi, S. (2018). How to design programs: an introduction to programming and computing.

Fincher, S., Jeuring, J., Miller, C. S., Donaldson, P., du Boulay, B., Hauswirth, M., Hellas, A., Hermans, F., Lewis, C., Mühling, A., Pearce, J. L., and Petersen, A. (2020). Notional machines in computing education: The education of attention. In Proceedings of the Working Group Reports on Innovation and Technology in Computer Science Education, ITiCSE-WGR ’20, page 21–50, New York, NY, USA. Association for Computing Machinery.

Fisler, K., Krishnamurthi, S., and Siegmund, J. (2016). Modernizing plan-composition studies. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education, SIGCSE ’16, page 211–216, New York, NY, USA. Association for Computing Machinery.

Gallindo, S., Oliveira, M., and Persona, H. (2021). Demanda de talentos em tic e estratégia stcem. Relatório técnico Brascomm, 1(1):1–32.

Garcia, M. B., Juanatas, I. C., and Juanatas, R. A. (2022). Tiktok as a knowledge source for programming learners: a new form of nanolearning? In 2022 10th International Conference on Information and Education Technology (ICIET), pages 219–223. IEEE.

González-Larrea, B., Hernández-Serrano, M. J., and Renés-Arellano, P. (2021). Analysis of the prevalence type in the adolescents’ social networks use by age and gender. In Ninth International Conference on Technological Ecosystems for Enhancing Multiculturality (TEEM’21), pages 423–427.

Grover, S., Cooper, S., and Pea, R. (2014). Assessing computational learning in k-12. In Proceedings of the 2014 conference on Innovation & technology in computer science education, pages 57–62.

Guarda, G. F. and Silveira, I. F. (2023). Desafios e caminhos para a implementação da bncc computação no ensino médio. In Anais do XXIX Workshop de Informática na Escola, pages 798–809. SBC.

Haaranen, L. (2017). Programming as a performance: Live-streaming and its implications for computer science education. In Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education, pages 353–358.

Harper, C., Tran, K., and Cooper, S. (2024). Conceptual metaphor theory in action: Insights into student understanding of computing concepts. In Proceedings of the 55th ACM Technical Symposium on Computer Science Education V. 1, SIGCSE 2024, page 463–469, New York, NY, USA. Association for Computing Machinery.

Lewis, C. M. (2012). The importance of students’ attention to program state: a case study of debugging behavior. In Proceedings of the ninth annual international conference on International computing education research, pages 127–134.

Lewis, C. M. (2021). Physical java memory models: A notional machine. In Proceedings of the 52nd ACM Technical Symposium on Computer Science Education, SIGCSE ’21, page 383–389, New York, NY, USA. Association for Computing Machinery.

McHugh, M. L. (2012). Interrater reliability: the kappa statistic. Biochemia medica, 22(3):276–282.

Milton, A., Ajmani, L., DeVito, M. A., and Chancellor, S. (2023). “i see me here”: Mental health content, community, and algorithmic curation on tiktok. In Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems, pages 1–17.

Oliveira, W. and Cambraia, A. C. (2020). Desafios na formação de professores de computação: Reflexões e ações em construção. In Anais do XXVI Workshop de Informática na Escola, pages 319–328. SBC.

Oliveira, W., França, R., Lemos, A., da Cruz, M. K., Scaico, P., Amaral, H., and Teixeira, L. P. (2020). Os desafios enfrentados pela licenciatura em computação que a comunidade de educação em computação precisa conhecer. In Anais do XXVIII Workshop sobre Educação em Computação, pages 191–195. SBC.

Qian, Y. and Lehman, J. (2017). Students’ misconceptions and other difficulties in introductory programming: A literature review. ACM Trans. Comput. Educ., 18(1).

Ribeiro, L., Foss, L., Cavalheiro, S. A. D. C., Kniphoff da Cruz, M. E. J., and Soares de França, R. (2023). The brazilian school computing standard. In Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1, pages 53–58.

Shanley, N., Pérez-Quiñones, M. A., Martin, F., Pugalee, D., Ahlgrim-Delzell, L., and Hart, E. (2023). K-12 teacher experiences from online professional development for teaching apcsa. In Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1, pages 1001–1006.

Sorva, J. et al. (2012). Visual program simulation in introductory programming education. Aalto University.

Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3):33–35.
Published
2024-07-21
BARBIERI, Maria; AMARAL, Jamili; DURAN, Rodrigo. “I can learn everything online”: An Analysis of TikTok’s Notional Machines for Learning Programming. In: WORKSHOP ON COMPUTING EDUCATION (WEI), 32. , 2024, Brasília/DF. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 541-553. ISSN 2595-6175. DOI: https://doi.org/10.5753/wei.2024.2325.