Development of computational thinking based on collective interaction in MediaWiki and multi-agent approach

Материал из Поле цифровой дидактики

Описание события Vasiliy Burov and Evgeny Patarakin: Development of computational thinking based on collective interaction in MediaWiki and multi-agent approach (online) // ICEM annual conference 2023 in Kuching, Sarawak, Malaysia on 10 – 13 September 2023
Тип события Доклад
Начало 2023-09-11T11:00:00.000Z
Окончание 2023-09-11T13:00:00.000Z
color green
Адрес события
Видео запись события
Среды и средства, которые использовались в рамках события MediaWiki, Semantic MediaWiki, NetLogo, Snap!
Формируемые в рамках события компетенции Computational thinking
Область знаний Информатика, Интернет вещей, Мобильное обучение
Местоположение 1° 33' 11.20" N, 110° 20' 42.12" E
Идёт загрузка карты…


The development of computational thinking is becoming increasingly important in the context of the emergence of artificial intelligence and the resounding success demonstrated by ChatGPT. This paper introduces a comprehensive approach designed to facilitate diverse learning activities involving digital objects. The approach is realized through the integration of various object classes and diverse activity types within a single platform, specifically the Semantic MediaWiki. The Semantic MediaWiki, augmented with various extensions, provides educators with a flexible and dynamic tool for curriculum design. It enables the incorporation of a wide range of educational materials, including text documents, diagrams, datasets, and multi-agent models, into course curricula. The unique aspect of this approach is that the same digital objects that serve as the basis for curriculum design also function as source materials for students. Students are encouraged to engage with these materials actively, creating and modifying their own projects based on them. This interactive and participatory learning process fosters a deeper understanding of the subject matter and promotes the development of computational thinking. The paper provides concrete examples of this approach in practice, presenting curricula of training courses that have been designed on a wiki site. These courses are not only used by students but are also continuously enriched and expanded by them, creating a dynamic and evolving learning environment.

Agency, collaboration, computational thinking, MediaWiki, multi-agent, modelling, Semantic MediaWiki, Scratch, Snap!, NetLogo, StarLogo Nova, understanding of AI


Computational thinking encourages critical thinking and helps individuals analyze complex ethical dilemmas related to AI systems. It enables them to assess the potential biases, transparency, and fairness of AI algorithms and make informed decisions about the responsible development and deployment of AI technologies. Computational literacy refers to the ability of a person to speak to a variety of computer entities in a language they understand, to ask them questions they can fulfill, to teach them what they can learn. In order to create conditions for the development of computational literacy, it is necessary to create an ecosystem where the student could observe and participate in interaction with a variety of such robotic performers. This involves building information flows and processes, where in one field you can contact agents in different languages and present the results of their actions in a common active essay. In this paper, it is proposed to use MediaWiki as a playing field for the formation of computational literacy with extended capabilities for working with data, constructing diagrams, and executing code inside pages in various programming languages.

Computational Pedagogy: Thinking, Participation, Reflection (Proceedings of ICEM 2018 Conference)

The article explores how designers create digital environments for trained individuals to act as teachers for software agents. This intersection of teaching and learning creates a field of computational didactics, where students teach digital performers how to behave. This field has been developing for some time and focuses on developing a student's computational thinking skills, which is their ability to use computing systems effectively. A. Repenning's definition of computational thinking as the synthesis of human abilities and computing system capabilities highlights the unique nature of this field (Repenning et al., 2017). Marvin Minsky was a pioneer in AI and believed that computational thinking is necessary for humans and machines to exist. He saw the potential for computer programs to teach children how to think like computers and create their own artificial worlds.

This vision is now being realized in block visual programming environments like Scratch and Snap!. Minsky's work has laid the foundation for a new generation of computational thinkers, which is essential in a world where technology is ubiquitous. His critical article on learning the Logo language emphasized the importance of engaging stories in language acquisition (Minsky, 1986). Papert and Minsky's concepts regarding educational microworlds have had a significant impact on the computer science and education sectors. In the last five decades, numerous microworlds have been created, building upon the foundation laid by Papert and Minsky's research on the Logo turtle (Ames, 2018; Solomon et al., 2020).

The consolidation of diverse learning microworlds into a singular domain presents a formidable obstacle for both educators and technologists. Nevertheless, the notion of the Active Essay as proposed by Alan Kay proffers a hopeful resolution. The active essay is a multimedia composition that integrates textual, pictorial, audiovisual, and interactive constituents to engender a captivating and immersive pedagogical encounter (Yamamiya et al., 2009). In contradistinction to conventional essays, which are frequently unidimensional and inert, active essays are dynamic and interactive, thereby empowering learners to investigate notions and principles in a more supple and engaging manner.


To achieve the Active Essay concept, we propose using Semantic MediaWiki, a platform that allows users to create and manage structured data in a collaborative environment. This approach enables us to establish a centralized platform for collecting and organizing various learning microworlds. Wikis have been popular for collaborative knowledge sharing in education, but with the Semantic MediaWiki extension, wikis can be transformed into semantic wikis, expanding the possibilities for collaboration on a shared knowledge ontology. Our experimental platform,, utilizes Semantic MediaWiki technology to create a dynamic and interactive environment for knowledge sharing. By creating classes for articles, we can categorize objects based on certain properties and categories, allowing for a more structured and intuitive way of organizing information. Our platform provides an interactive collection and presentation of knowledge using forms, templates, and properties of the Semantic MediaWiki system. This approach ensures a uniform collection of data about entities that represent a new area of knowledge. The platform also allows for the ability to search and generate reports on queries formulated in the ASK language, providing a powerful tool for educators and learners to explore and engage with complex topics. On this playing field, we managed to organize the collective use by teachers and students of objects from fifteen categories: Book‏‎, Competence‏‎, Community, Curriculum, Concept, Videogame, Dataset‏‎, Diagram, DigitalTool, ‎‎Model, Pattern, Person, ‏‎Programming language, ‎Robot, Scripting Tutorial. Users can use these objects and construct new pages from them by accessing objects and agents in different languages. Table 1 provides a comprehensive list of categories, along with examples of objects, MediaWiki extensions that facilitate the representation of these objects, and links that connect objects of this category with those of other classes.


Categories Examples Extensions Relationships
Book‏‎ Blown to Bits, Communities of Practice, Mindstorms, App Inventor 2 (book), Children Learning to Code, Literacy and Education ... Semantic MediaWiki, Semantic Result Formats, Page Forms, SimpleMathJax, PDF Handler Books are written by writers and illustrated with diagrams and models.
Competence‏‎ Cultivate responsible online behavior, Identify and develop online networks within school policy, Use digital tools to create original works Semantic MediaWiki, Semantic Result Formats, Page Forms, Competences are fixed in standards and curricula and mastered in communities of practice.
Community CloudWorks, CoMSES, ISTE Commons, Modeling Commons, Stack OverFlow, WikiHow, Wikipedia, GitHub SimpleMathJax, EmbedScratch, Snap! Project Embed, ScratchBlocks4, SyntaxHighlight Communities are formed through the creation of video games and models using digital tools and programming languages
Curriculum Algorithms and data structures, Data analysis and interpretation, Community building and networking, Cloud technologies, Social network API, Mobile Apps, Programming in high level languages SimpleMathJax, EmbedScratch, Snap! Project Embed, ScratchBlocks4, SyntaxHighlight Various curricula within the wiki include concepts, diagrams, datasets, multi-agent models in various programming languages..s
Concept Flocking, Flowchart, Foo, Memex, JSON, API Widgets, Diagrams, EmbedScratch, Snap! Project Embed, ScratchBlocks4 Concepts are formulated by persons, presented in books, explained in models and mastered in programming environments
Videogame Minecraft Hour of Code, Pac-Man, Penguin Go, Mario Bros, SimCity, Zoombinis Semantic MediaWiki, Semantic Result Formats, Widgets, Video games provide an opportunity for students to familiarize themselves with potential behavioral patterns of software agents. This knowledge can subsequently be applied to the creation of their own models using programming languages.
Dataset‏‎ ChatbotACM, Collaborative knowledge ACM, Computational thinking ACM External Data, Data Transfer Widgets, Snap! Project Embed Participants can collect datasets or grow them using multi-agent models. Datasets are used in training courses
Diagram Git diagrams, Ontology of digital literacy, SMW diagrams, ZooUniverse Diagram Diagrams, Mermaid, Widgets Diagrams are generated by contributors or software agents and are used inside book pages, concepts, and curricula
Digital Tool‏‎ BehaviorSpace, CODAP, ChatGPT, Logseq Semantic MediaWiki, Semantic Result Formats, Widgets, Digital tools are used to process and render datasets in MediaWiki pages
Pattern Absorb, Generate, Collision, Transport .. EmbedScratch, Snap! Project Embed, Widget, Students get acquainted with the behavior patterns of agents in video games and models, and then in their own projects in various programming languages they teach other agents to reproduce these patterns
Model‏‎ Piaget-Vygotsky-Game, Segregation (model), Sugarscape model, Fire (model), Fireflies (model), Flocking (model) Snap! Project Embed, Widgets Models explain books, concepts and patterns of agent behavior
Programming language‏‎ Scratch, Snap!, NetLogo, StarLogo Nova, R, Lua, Python, PHP EmbedScratch, Snap! Project Embed, ScratchBlocks4, SyntaxHighlight, SimpleMathJax, Scribunto Students use programming languages to create their own video games and models.

Programming languages timeline

We started collecting programming languages and educational microworlds on our wiki site early on (Children Learning to Code // Parandekar et al., 2019). Although it may seem like a straightforward category, it offers a wealth of information on the history of programming languages, their creators, predecessors, and successors. By gathering this data, we can create a timeline that serves as a valuable resource for educators, researchers, and students. This timeline provides a deeper insight into the evolution of programming languages and their use in education to teach computational thinking and problem-solving skills.

Lisp OR Ancestors:Logo)

Visual programming blocks

It should be noted that both Semantic MediaWiki pages and properties function as fundamental components that can be utilized to construct diverse forms of content. In addition to these building blocks, visual programming blocks in languages such as Scratch and Snap! will be incorporated into the experimental site's repertoire. For instance, if a wiki page contains a particular sequence of textual blocks, it can be transformed into visual blocks.

when [up arrow v] key pressed
point in direction (0)
move (10) steps
when [down arrow v] key pressed
point in direction (180)
move (10) steps
when [right arrow v] key pressed
point in direction (90)
move (10) steps
when [left arrow v] key pressed
point in direction (-90)
move (10) steps

Now your sprite will turn when it moves.

The aggregation of projects completed in different learning environments on a single wiki page provides a valuable opportunity to compare the features and differences in the implementation of algorithms across various programming platforms. Additionally, this approach allows for the transfer of solutions and experiences gained in one programming environment to the space of another programming language. The same principles apply to the aggregation of projects made in environments such as StarLogo Nova and NetLogo Web. In particular, agent-based modeling web environments have the capability to generate data that can be leveraged by students in further research projects (Patarakin & Yarmakhov, 2021).

External Data

To facilitate access to this data directly from the Semantic MediaWiki site, we employ the External Data Extension. This extension enables the retrieval, processing, and presentation of data generated in Scratch, Snap!, StarLogo Nova, and NetLogo Web on wiki pages. Many examples of such access to external data can be found in the article from the DataSet category - Category:Dataset

Release.Year 2004 Games

Title Genres Length.Main Story
Super Mario 64 DS Action 9.7
Lumines: Puzzle Fusion Strategy 9.583333333333334
WarioWare Touched! Action,Racing / Driving,Sports 1.4333333333333333
Hot Shots Golf: Open Tee Sports 0.0
Spider-Man 2 Action 5.333333333333333
The Urbz: Sims in the City Simulation 15.25
Ridge Racer Racing / Driving 0.45
Metal Gear Ac!d Strategy 17.883333333333333
Madden NFL 2005 Sports 0.0
Pokmon Dash Racing / Driving 1.05
Dynasty Warriors Action,Adventure,Role-Playing (RPG) 3.1166666666666667
Feel the Magic XY/XX Action,Adventure,Racing / Driving,Sports 2.3
Ridge Racer DS Racing / Driving 2.2333333333333334
Darkstalkers Chronicle: The Chaos Tower Action 1.0666666666666667
Ape Escape Academy Action,Sports 1.8833333333333333
Polarium Strategy 4.866666666666667
Asphalt: Urban GT Racing / Driving,Simulation 15.0
Zoo Keeper Action 4.75
Mr. DRILLER: Drill Spirits Action 8.766666666666667
Sprung Adventure 0.0
Armored Core: Formula Front - Extreme Battle Action,Strategy 0.0
Puyo Pop Fever Action,Strategy 1.6166666666666667

The consolidation of projects from diverse learning environments onto a unified wiki page presents a potent instrument for both educators and learners to investigate and contrast diverse programming platforms. Additionally, the utilization of agent-based modeling web environments and the External Data Extension facilitates the amalgamation of data produced in disparate programming platforms, thereby furnishing a valuable resource for subsequent research and exploration.

Extending MediaWiki capabilities through Semantic Mediawiki, EmbedScratch, ScratchBlocks4, Snap! Project Embed, graphviz, mermaid, Widgets:iframe, Widgets:YouTube, allows teachers to collect projects created in various online educational communities in one field. This helps students learn from simpler to more complex examples of how to solve similar problems in different multi-agent programming environments.

The approach described in this paper can also be implemented using other software platforms, such as a different wiki systems or LMS, not only MediaWiki. The authors' choice of Semantic MediaWiki is based on their extensive personal experience with it. Also an important factor is the maturity of the MediaWiki ecosystem, which provided extensions that would otherwise have to be developed in-house.


Currently, the Semantic MediaWiki site presents programs of several disciplines that teachers and students work with. Some of these disciplines have already received high marks from students. So the program of the «Community Building and Networking» course was marked by students as the best course for new knowledge and skills. In the process of developing a curriculum for an academic discipline, teachers are responsible for collecting and designing various components. These components include the basic concepts of the subject area, diagrams, datasets, and multi-agent models. Additionally, teachers must also consider the competencies that students should acquire as a result of engaging with the curriculum. To construct a curriculum page, teachers incorporate different objects from various classes. These objects include the competencies that the teacher aims to develop in students, the concepts that students will learn, the books and authors that students will utilize during the course, the digital tools and programming languages that students can employ to complete assignments, and video games that expose students to patterns of behavior that software agents can simulate. Furthermore, teachers provide students with to relevant data sets that they can utilize for their projects. Additionally, teachers may also offer multi-agent models that students can use as sources of data generation or as samples for modification. By incorporating these various components into the curriculum, teachers aim to create a comprehensive and engaging learning experience for students.

Educational tasks require students within an educational engage with the materials available on the wiki platform. One such platform is Semantic MediaWiki, which enhances the learning experience by incorporating computational thinking. Semantic MediaWiki allows students to organize and structure information in a meaningful way, making it easier understand and analyze complex concepts. It encourages students to think critically and logically, as they navigate through the wiki and make connections between different pieces of information. By utilizing Semantic MediaWiki, students develop computational thinking skills, such as problem-solving, algorithmic thinking, and data analysis.

The first example of a learning task:

Collect the text of your own article from objects of different categories, using a query in the Semantic MediaWiki language аsk
Possible solution

{{#ask: [[Category:Community]] [[Social Object::Code]] | ?Address | ?Tool }}

 Адрес сообществаTool
HabrВыполняемая статья
Modeling Commonshttp://modelingcommons.orgNetLogo
Roblox Studio
Stack OverFlow
Сообщество GeoGebra
Сообщество NetLogo
Сообщество Scratch
Сообщество Snap!!
Сообщество StarLogo Nova

Second example of a learning task:

Create from scratch or modify a community diagram in dgl or mermaid languages. Use the examples from the Diagram category

Possible solution

The third example of a learning task:

Present data from an external dataset on a wiki page using various MediaWiki extensions. Use the examples from the Dataset category

Possible solution
format=csv with header
filters=Publication Year=2021

Title Publication Title Author URL
Developing Middle School Students' AI Literacy Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Lee, Irene; Ali, Safinah; Zhang, Helen; DiPaola, Daniella; Breazeal, Cynthia
SQL2X: Learning SQL, NoSQL, and MapReduce via Translation Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Wu, Wensheng
Event-Driven Programming in Programming Education: A Mapping Review ACM Trans. Comput. Educ. Lukkarinen, Aleksi; Malmi, Lauri; Haaranen, Lassi
Supporting Diverse Learners in K-8 Computational Thinking with TIPP&SEE Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Salac, Jean; Thomas, Cathy; Butler, Chloe; Franklin, Diana
Computational Thinking, Perception, and Confidence in Distance Learning Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Bao, Yeting; Hosseini, Hadi
Development and Preliminary Validation of the Assessment of Computing for Elementary Students (ACES) Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Parker, Miranda C.; Kao, Yvonne S.; Saito-Stehberger, Dana; Franklin, Diana; Krause, Susan; Richardson, Debra; Warschauer, Mark
Pivoting in a Pandemic: Transitioning from In-Person to Virtual K-8 Computing Professional Development Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Burke, Quinn; Iwatani, Emi; Ruiz, Pati; Tackett, Traci; Owens, Aileen
Leveraging Prior Computing and Music Experience for Situational Interest Formation Proceedings of the 52nd ACM Technical Symposium on Computer Science Education McKlin, Tom; McCall, Lauren; Lee, Taneisha; Magerko, Brian; Horn, Michael; Freeman, Jason
The Understanding and Evolution of the Construction Elements of Educational Computing Experiment 2021 2nd International Conference on Computers, Information Processing and Advanced Education Meng, Ji
Computer Science Education Graduate Students: Defining a Community and Its Needs Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Peterfreund, Alan; Esaison, Jordan; Smith, Julie M.; Johnston, Brianna
You Can't Sit With Us: Exclusionary Pedagogy in AI Ethics Education Proceedings of the 2021 ACM Conference on Fairness, Accountability, and Transparency Raji, Inioluwa Deborah; Scheuerman, Morgan Klaus; Amironesei, Razvan
Unequal Impacts of Augmented Reality on Learning and Collaboration During Robot Programming with Peers Proc. ACM Hum.-Comput. Interact. Radu, Iulian; Hv, Vivek; Schneider, Bertrand
History of Technology and Discovery: A Study Away Experience in Computer Science J. Comput. Sci. Coll. Treu, Kevin
Mapping Materials to Curriculum Standards for Design, Alignment, Audit, and Search Proceedings of the 52nd ACM Technical Symposium on Computer Science Education Goncharow, Alec; Mcquaigue, Matthew; Saule, Erik; Subramanian, Kalpathi; Payton, Jamie; Goolkasian, Paula

The fourth example of a learning task:

Include the multi-agent model code that generates data on collective behavior in the wiki page. Use the examples from the Model category

Possible solution


In conclusion, our interactions with computer entities share similarities across different design environments. Whether we are accessing turtle performers in NetLogo or pages in Semantic MediaWiki, our requests to these entities follow a similar format. For example, when we ask blue turtles in NetLogo to show themselves and provide information about themselves, we use the command

Ask turtles with [color=blue] [set label who]

Similarly, when we ask pages in Semantic MediaWiki to appear on the screen and provide information about themselves, we use the command

{{#ask: [[Category:DigitalTool]] [[AI::Yes]] [[launch year::2022]] | ?Description | ?Website }}

AudionotesСредства перевода из голоса в текст и улучшения качества текста.
PerplexityAIPerplexity — чат-бот с искусственным интеллектом для поиска информации и генерации текста. Perplexity использует информацию из современного интернета, а не образца 2021 года. Страница с ответом состоит из трёх блоков: сам ответ, источники информации, «вопросы по теме» и поле для дополнительных запросов.
  • 120px-Perplexity01.jpg
PoeПриложение с искусственным интеллектом Poe позволяет создавать собственных чат-ботов с помощью подсказок. Пользователь может переключаться между Sage, ChatGPT, GPT‑4, Claude Instant и Claude+. Платформа доступна через браузер.
  • 120px-Poe_python.jpg
    WolframAlphaОбъединение выразительных возможностей языка Wolfram + ChatGPT.
    YandexGPTНейросеть Яндекса, доступна через голосовой помощник Алису и в окне браузера
  • 116px-YandexGPT_logo.jpg

    This command asks all pages from the category of digital educational games for which support tools are defined to go to the screen and show their support tools. These similarities in our interactions with computer entities highlight the importance of understanding the underlying principles of computer science, such as computational thinking and problem-solving skills. By developing these skills, we are better equipped to navigate and utilize the vast array of digital tools and environments available to us today. Overall, our interactions with computer entities may vary across different design environments, but the fundamental principles of computer science remain constant. We must continue to prioritize the development of computational thinking skills and embrace the power of technology to enhance learning and creativity in the digital age.

    When working with multi-agent computing environments, students inevitably encounter bugs and errors in their programs. Debugging becomes an essential skill as they identify and fix issues that prevent their agents from behaving as intended. Through this process, students develop problem-solving skills, learning to analyze and troubleshoot problems systematically, testing and iterating their solutions. Debugging fosters resilience, persistence, and attention to detail, which are key aspects of computational thinking.

    Multi-agent computing environments often involve interactions between multiple agents or sprites. Students are encouraged to design systems where agents communicate, cooperate, or compete with each other. This promotes collaboration and systems thinking as students consider the interdependencies and interactions between agents and how they contribute to the overall system's behavior. Understanding how agents work together encourages students to think holistically and consider the broader context in computational problem-solving. A special issue is the selection of models and practices around which computational thinking develops. They should provide both attractiveness and the opportunity to explore such things as social and ethical aspects. There is currently no good solution for this. We see that one of the most successful is the use of models related to models borrowed from biology for social and economic processes. But this issue is still a subject for further research.

    AI systems like ChatGPT are designed to assist and augment human intelligence, rather than replace it. Computational thinking empowers individuals to understand the capabilities and limitations of AI technologies, allowing them to collaborate more effectively with these systems. By leveraging computational thinking, individuals can identify tasks that are better suited for AI automation and explore ways to integrate AI solutions into their work processes.

    We looked at a simple way to create an interactive environment for developing computational thinking using existing solutions based on MediaWiki. Using Semantic MediaWiki extensions and others, we turned wiki pages into executable articles that included flowcharts in graphviz, mermaid, and plantUML, as well as visual programming blocks in Scratch and Snap! languages, as well as agent-based models in StarLogo Nova and NetLogo languages. Multi-agent computing environments like Snap!, Scratch, [StarLogo Nova]] and NetLogo offer valuable platforms for students to develop computational thinking. By engaging with these environments, students practice problem decomposition, algorithmic thinking, debugging, problem-solving, collaboration, systems thinking, and creativity.

    These skills and mindsets are essential for leveraging computational thinking in the context of AI and emerging technologies, preparing students for the challenges and opportunities of the digital age. AI technologies are constantly evolving, and new applications and use cases continue to emerge. Computational thinking fosters adaptability and innovation by providing a framework for understanding and working with these evolving technologies. It equips individuals with the skills to learn and adapt to new AI tools, algorithms, and approaches, enabling them to stay relevant in a rapidly changing technological landscape.

    Multi-agent computing environments provide students with a creative outlet to express their ideas and experiment with different solutions. They can design and program agents to exhibit unique behaviors, simulate real-world phenomena, or tackle novel challenges. This encourages students to think creatively and innovatively, exploring alternative approaches and refining their designs based on feedback and iteration. These environments foster the development of computational thinking in a context that promotes innovation and originality.