Python-Bot: A Chatbot For Teaching Python Programming: Engineering Letters February 2021
Python-Bot: A Chatbot For Teaching Python Programming: Engineering Letters February 2021
net/publication/349574948
CITATION READS
1 2,789
2 authors:
Some of the authors of this publication are also working on these related projects:
Regex Parser II: Teaching regular expression fundamentals via educational gaming View project
All content following this page was uploaded by Okonkwo Chinedu on 25 February 2021.
Abstract—The applications of Artificial Intelligence (AI) in Artificial Intelligence (AI) are needed as interventions in
Education is growing continuously. One of the recent AI addressing this problem [22, 23].
applications introduced to Education is the Chatbot technology,
used to support teaching and administrative tasks. A long
standing problem in Computer Science Education (CSE) is how One way to approach this is the adoption of technological
to improve program comprehension for novice programmers. tools that aid the teaching and learning of programming [1].
So far, CSE has not seen any Chatbot for supporting the There exist a number of Chatbots in Education, but to the
teaching of programming. This paper proposed a Chatbot best of our knowledge, none has been designed to teach
named Python-Bot that helps novice programmers to un- Python programming. Some existing Chatbots in Education
derstand Python’s basic syntactic structures and semantics.
Python-Bot was implemented on an existing Chatbot API include Chatbots for: students’ support [10], asking and
(called SnatchBot) and an evaluation was performed to prove answering queries [24], mobile language learning [25],
the effectiveness of Python-Bot. The results suggest that answering university related questions [26], finding paths
Python-Bot can support novice programmers in the com- on a university campus [27], and so on. The introduction
prehension of programs written in Python. Python-Bot can of Chatbots in Education can be seen as a significant
be found at: https://tinyurl.com/pythonbotchatbot2020.
advancement and an innovative solution for improving
Index Terms—Chatbot, Python Programming, Novice Pro- learning of difficult subjects [10, 11]. Using Chatbots can
grammers, Computer Science Education, Program Comprehen-
change the pace at which students can learn without being
sion, SnatchBot.
compelled to [28]. The use of Chatbots in learning enables
students to be more agile, customised, engaged and inspired
I. I NTRODUCTION [10, 29].
II. BACKGROUND AND R ELATED WORK that Chatbots are useful for learning [10, 33, 52]. Clarizia
In this section, the background of Chatbots with much et al [10] stated that the Chatbot system is one of the
emphasis on the applications thereof in Education is pre- key innovative solutions that fills the technological and
sented. Chatbot system is an AI technology being used in educational gap.
various aspects of life activities including Healthcare [30],
Finance [31], Social interactions [32] and Education [33, 11]. Knill et al [45] noticed that with a Chatbot conversation,
Several organisations have developed APIs or platforms for teachers could observe the type of questions that students ask,
creating Chatbots, such as: IBM Watson [34], Microsoft the subject’s problem areas, and measure student learning
Cortana, Apple Siri [10, 35] and Facebook M [36]. abilities. As the development of Chatbot technology ad-
vances, there are more cases of use in almost every conceiv-
able industry. Chatbots have recently started to be introduced
A. What is a Chatbot? in Education, and the expected effects are extensive. Tradi-
Chatbot system is a smart conversational agent or dialog tionally, the adaptation of new technologies to Education is a
system that promotes interactive learning [37]. An intelligent little slower, but the innovation trend in the 4IR era is creating
agent able to communicate with a user in order to answer a rapid changes. Educators and administrators who understand
number of questions and provide the correct response [10]. Chatbots’ importance will discover an easy and economical
Modern dialog systems usually adopt a hybrid design com- way to engage more students and simplify teaching and
bining handcrafted states and procedures with computational learning processes. Chatbots plays vital role in Education.
machine learning algorithms [38, 39, 40]. The architecture Some of these roles include providing the students with an
involves a collection of interrelated subsystems that are interactive learning environment, support to teachers, spelling
closely linked to the development of the microservice archi- and grammatical checking [10]. Chatbots also serve as a
tecture [41, 42]; that is, small interconnected components that means of social learning [53], providing personal advice
communicate through a lightweight protocol over the Internet [54] used as online assessments [55], replying to students’
[43]. These systems depend on an initial Natural Language queries, and checking their assignments [24].
Understanding (NLU) module to determine intentions and
extract the appropriate data from the user queries they take
as input [44]. The need for Educational Chatbot systems has C. Related Work
increased with the extensive use of computers and mobile We could not find a Chatbot specifically designed to teach
devices with the ability to interact, and the willingness of Python programming, however, related works (similar bots)
their manufacturers to deliver natural language interfaces. in this area are as follows:
More so, Knill et al. [45] found in the Education domain Questions and Answers Clarizia et al [10] created a Chat-
that Chatbot technology amplifies the learning system. bot prototype. The model uses Natural Language Pro-
cessing (NLP) method to detect students’ questions and
B. Chatbot as a Teaching and Learning Tool provide the accurate answers to the student. Sharod et al
[24] developed a Chatbot system for answering queries.
Technology offers many learning opportunities, and the
The system can automatically respond to a query from
internet has tremendous potential [46]. The introduction
a user on behalf of an individual, for learning pur-
of AI in Education is changing the learning process [10].
poses. Ranoliya et al [26] designed a Chatbot that
Students learn and absorb information through AI tools
uses the Artificial Intelligence Markup Language and
like Chatbot [33, 47]. Today’s teachers are able to offer
Latent Semantic Analysis to provide correct responses
the learners with a customized learning environment thanks
to questions based on the FAQ dataset.
to AI. Researchers have developed a number of learning
tools to improve the Education system [48]. Chatbots, Language Concepts Pham et al [25] built an English
as conversational agents, act as game changers in the learner Chatbot. The system is set up on mobile devices
innovative learning world [10, 49], and are built to enhance for communication with users. The Chatbot will auto-
the interaction and collaboration among the students and matically alert students to learn and propose solutions
their courses [50, 51]. Several studies have emphasized to multiple-choice questions. It can also assist users
learn new language concepts. Zhao et al [56] created system enables digital revolution [65, 66]. As a consequence,
a learning tool called APIHelper that helps novice machines no longer capture explicit knowledge (where hu-
Android programmers learn how to use the APIs. Zaw et mans can explain a sequence of relatively logical steps) but
al [57] developed a Java programming learning tool that are now creating a tacit understanding the intuitive, know-
provides different kinds of exercise problems for study how integrated into the human mind. The introduction of AI
coverage at different levels. technology in Education will bring significant improvements,
allow fresh possibilities to teach and learn anywhere at any
Administrative and Services In a study to discuss learning
time, and provide fresh instruments and techniques for im-
environment, Hein et al [58], developed a Chatbot that
proving learning results and supporting innovative teaching
automatically responds to a student question on behalf
and learning [67]. The skills required to build and operate AI
of the academic staff on the delivery of the Education
technologies are based on the knowledge of programming.
system. The Chatbot will play the role of a digital assis-
Unfortunately, Computer Programming courses were seen
tant, providing tertiary institutions with ways to enhance
by students as difficult to learn and shy away from them.
their present services, develop new innovative products,
There is therefore a need to simplify the teaching and
and minimize labour costs. Some of the AI techniques
learning methods of Computer Programming in order to
used in building the system include text classification
motivate students’ interests in programming. Python-Bot
and named entity recognition. Röhrig and Heß [59]
is designed to provide an easy-to-use Python programming
have developed a mobile manipulator platform that can
learning platform for students.
enable human-robot collaboration services, and mobile
manipulation can be used in research and education
[60]. Information technology enables the creation and III. C HATBOT D ESIGN
functioning of collaborative applications [61]. In this section, the system design of Python-Bot
Evaluation Platform Introducing Computer Science con- with an example of a working algorithm are presented.
cepts to high school students in an innovative way, The development of Python-Bot follows SnatchBot
Nicol et al [12] presented a Chatbot designed platform platform principles (mainly drag-and-drop, code-free
using pattern matching, finite state automata, and state- design). SnatchBot provides an in-built editor that can be
of-the-art lemmatization methods to offer students with used to develop a simple or complex conversation with
automated formative evaluation. To improve analytical action buttons and translations. Also, SnatchBot allows you
thought, Mor et al [62] suggested a Chatbot model and to create many interactions in relation with activities of the
architecture based on skill training and evaluation. The Chatbot. During our development, we created interactions
Chatbot provide a conversational interface to simulate a that are used to describe the subjects. For example, in
lab experience and setting based on activities. building an interaction between the Chatbot and the user
to introduce themselves, we created an interaction called
D. Chatbot Development Platforms Introduction. In a similar way, many other interactions
were created including Name, Rename, Goodbye, Contents,
A Chatbot Development Platform is a tool/application that
Concepts, Exercises, etc. The subjects are the predefined
can be used to create a Chatbot. These platforms support
response patterns from the Chatbot including messages,
software developers by building a stream, offering Machine
videos, graph, etc. With SnatchBot, we created a design
Learning capabilities and integration with APIs to add more
consisting of interactions and subjects. Figure 2 shows some
features to your Bot. Several platforms can be used to build
part of the building scheme of Python-Bot.
Chatbots quickly and easily including Microsoft’s Azure Bot
Framework, Google’s Dialogflow, Amazon’s Alexa, Face-
book’s Bots for Messenger, ManyChat, GupShup, Chatfuel,
Botsify [25], and SnatchBot. The SnatchBot platform allows
developers to create interactions from Chatbot that address a
range of business issues. Python-Bot was developed using
the Snatchbot platform concepts.
E. The Gap
From the literature, tools are needed to support students
during their learning process. Various types of Chatbot
have been designed and created for different activities in
Education. No attempt has been made to create a Chatbot
for teaching Python programming. If such a Chatbot is
developed, it should help instructors save time in responding
to student queries as well as help students learn how to
program in Python. This paper proposed a Chatbot for
teaching Python programming. Fig. 2: The building Scheme of Python-Bot
connections can only work on a specific interaction, intent. For the NLP module to achieve particular goals,
while global connections can work on all interactions. we had to define the types of entity and intent it would
All connections are in the form of a logical statement: recognise. In other words, we used some predefined NLP
if x then y else K. The algorithm below shows the models in SnatchBot for each of the entity and intent
main activity in the information decision section of the that we want Python-Bot to identify. The models use
Python-Bot. Machine Learning to make decisions in any new sentence
they encounter, using the samples provided as the basis. In
this work, two NLP models were used to provide support to
Algorithm 1: Python-Bot Information Decision learners, including model that detects the date (entity) and
Input: Topic (this is the topic deduced from the text one that detects the time (intent) for appointment. During a
entered by the user); conversation with Python-Bot, a student may need the
if Topic Matches Message Bank then attention of a tutor or lecturer requiring a meeting.
return predefined response
(3: T opic ∈ Response) // returns predefined These models help to generate the appropriate date and
responses such that the response is in the time for a meeting based on the predefined dates and times
collection of responses for the topic; available. In addition, an email message will automatically be
else sent to the tutor/lecturer to notify him/her of the meeting. If
return default answer (select a topic); the meeting is confirmed by the tutor/lecturer, the student can
end have a face-to-face discussion with the tutor/lecturer. Figures
5a and 5b demonstrates the Python-Bot’s NLP capability
of creating a meeting appointment to provide the learners
The Python-Bot’s functional decision in response to with physical support.
user queries is shown in Figure 3.
V. S COPE OF P Y T H O N -B O T
IV. I MPLEMENTATION AND R ESULTS
Python-Bot was developed with the SnatchBot API, This section summarises the scope of Python-Bot’s
using it’s predefined tools that is driven by various NLP operations covering main Chatbot functionalities; including
algorithms. SnatchBot is a website for Chatbot creation. how it introduces itself to students, shares programming
It helps you to handle end-to-end bot management from concepts and provides support capability.
creating and reviewing flows to publishing and reporting Introduction Python-Bot begins by first introducing it-
performance. It communicates with many social networking self and asking the user to introduce himself or herself.
and communication sites, including Facebook, Slack, Skype, This enables the Chatbot to keep record of the user name
Viber, Twitter, etc. Another interesting feature of SnatchBot and conversation period (starting time, ending time and
is the Channel. The SnatchBot Channel is made up of an duration of the conversation).
integrated Application Programming Interface (API). This Programming Concepts The Python-Bot provides de-
allows Chatbots to be deployed on websites and social tail explanation of Python programming concepts in-
networks. Through the SnatchBot Channel, Python-Bot cluding Data Types, Expressions, Control Statements,
is placed on a website. Students may use their smartphones Strings, Text Files, Lists, Dictionaries, Tuples, Problem
or laptops to connect to the website to chat with the Chatbot, Solving, and Algorithms.
making Python-Bot accessible to novice programmers
Python-Bot can also discuss algorithms that are free of
for learning how to program in Python.
programming language syntax. Examples of the some content
shared by Python-Bot to assist novice programmers in
Python-Bot starts an operation with the introduction
understanding the grammatical structure of if statements is:
of the Bot and the user. It describes itself and seeks the
student’s willingness to engage in conversation, as well as IF (logical condition(s)) THEN
recognition of the student’s name. The Bot receives the Statement block 1
student’s query, prepares it and answers the student by ELSE
sending him/her predefined textual insights into the subject. Statement block 2
Also, it provides some examples of the implementation of END IF
Python algorithms and outputs showing the willingness of
the user to participate in a learning conversation and the Python-Bot proceeds to explain to the user the
ability of the Bot to provide the correct answers. A sample process of writing or constructing an algorithm. For
discussion with Python-Bot is shown in Figures 4a and instance, to write an algorithm to find the average
4b. of two numbers. It displays an explains these steps:
(a) Starting a conversation with Python-Bot (a) Processing of date for a meeting
(b) Examples of Python code examples displayed to the user (b) Processing of time for a meeting
A. Evaluation of Python-Bot the lecturer for assistance when needed. From the students’
A survey was conducted at the University of Johannesburg, perception, the use of Python-Bot was helpful in learning
South Africa, and the target audience includes the first-year the subject.
students taking the Python programming introductory course
as well as those who have completed the course before. This VII. C ONCLUSION AND F UTURE WORK
demographic was selected because they are considered to A. Conclusion
be novice programmers. The purpose of the experimental In this paper, we presented a Chatbot system called
campaign was to determine: Python-Bot that assists novice programmers in learning how
1) how easy do they find the design and use of to program in Python. Python-Bot was created using Snatch-
Python-Bot, and Bot API. The Chatbot can be deployed on the website and
2) if using Python-Bot improves students’ program on social networking platforms. The evaluation results show
comprehension. that a vast majority of students currently taking a Python
A total of 205 responses were received. Approximately programming course and those who did the course before
73% (150) of the respondents were students who have done agreeing that the tool is user-friendly, simplifies program-
Python programming course. Students were asked about their ming logic and enhances their Python programming skills.
perception of: Furthermore, this tool was used to support the teaching of
Computer Programming Courses This tested students’ introductory programming to students during the COVID-19
general perceptions of Computer Programming courses pandemic.
in order to determine their feelings regarding learning
the courses. 60.5% believed that the courses are B. Future Work
difficult, 27.3% find the courses to be easy and 12.2% There are several programming language courses in the
were indifferent. This is shown in Figure 6a. field of computer science. In the future, this tool will be
extended to include the teaching and learning of these
Use of Python-Bot This tested how user-friendly subjects. For many other undergraduate courses, the creation
Python-Bot is. 73.7% believed that the tool is easy of Chatbot systems can help in assisting the online learning
to use, 15.6% found it difficult to use and 10.7% were platform.
indifferent. See Figure 6b.
[19] TV Kondratyuk. Fourth industrial revolution: What (MDM), pages 371–375. IEEE, 2017.
competences are necessary for employees? Strategic [31] Jon TS Quah and YW Chua. Chatbot assisted marketing
decisions and risk management, (3):66–79, 2018. in financial service industry. In International Confer-
[20] NV Komarova, AA Zamkovoi, and SV Novikov. The ence on Services Computing, pages 107–114. Springer,
fourth industrial revolution and staff development strat- 2019.
egy in manufacturing. Russian Engineering Research, [32] Agnese Augello, Manuel Gentile, Lucas Weideveld, and
39(4):330–333, 2019. Frank Dignum. A model of a social chatbot. In
[21] Yizhou Qian and James Lehman. Students’ miscon- Intelligent Interactive Multimedia Systems and Services
ceptions and other difficulties in introductory program- 2016, pages 637–647. Springer, 2016.
ming: A literature review. ACM Transactions on Com- [33] Petre Anghelescu and Stefan Vladimir Nicolaescu.
puting Education (TOCE), 18(1):1–24, 2017. Chatbot application using search engines and teach-
[22] Roger O Smith, Marcia J Scherer, Rory Cooper, Diane ing methods. In 2018 10th International Conference
Bell, David A Hobbs, Cecilia Pettersson, Nicky Sey- on Electronics, Computers and Artificial Intelligence
mour, Johan Borg, Michelle J Johnson, Joseph P Lane, (ECAI), pages 1–6. IEEE, 2018.
et al. Assistive technology products: a position paper [34] Ying Chen, JD Elenee Argentinis, and Griff Weber.
from the first global research, innovation, and education IBM WAtson: how cognitive computing can be applied
on assistive technology (great) summit. Disability to big data challenges in life sciences research. Clinical
and Rehabilitation: Assistive Technology, 13(5):473– therapeutics, 38(4):688–701, 2016.
485, 2018. [35] Veton Kepuska and Gamal Bohouta. Next-generation
[23] Michael J Lee and Bruce Ferwerda. Personalizing of virtual personal assistants (Microsoft Cortana, Apple
online educational tools. In Proceedings of the 2017 Siri, Amazon Alexa and Google Home). In 2018 IEEE
ACM Workshop on Theory-Informed User Modeling for 8th Annual Computing and Communication Workshop
Tailoring and Personalizing Interfaces, pages 27–30. and Conference (CCWC), pages 99–103. IEEE, 2018.
ACM, 2017. [36] Jyri Lehvä, Niko Mäkitalo, and Tommi Mikkonen. Case
[24] Sharob Sinha, Shyanka Basak, Yajushi Dey, and Anu- study: building a serverless messenger chatbot. In
pam Mondal. An educational chatbot for answering International Conference on Web Engineering, pages
queries. In Emerging Technology in Modelling and 75–86. Springer, 2017.
Graphics, pages 55–60. Springer, 2020. [37] Sherry Ruan, Angelica Willis, Qianyao Xu, Glenn M
[25] Xuan Lam Pham, Thao Pham, Quynh Mai Nguyen, Davis, Liwei Jiang, Emma Brunskill, and James A
Thanh Huong Nguyen, and Thi Thu Huong Cao. Landay. Bookbuddy: Turning digital materials into
Chatbot as an intelligent personal assistant for mobile interactive foreign language lessons through a voice
language learning. In Proceedings of the 2018 2nd In- chatbot. In Proceedings of the Sixth (2019) ACM
ternational Conference on Education and E-Learning, Conference on Learning@ Scale, pages 1–4, 2019.
pages 16–21. ACM, 2018. [38] Jason D Williams. An empirical evaluation of a
[26] Bhavika R Ranoliya, Nidhi Raghuwanshi, and San- statistical dialog system in public use. In Proceedings
jay Singh. Chatbot for university related faqs. In of the SIGDIAL 2011 Conference, pages 130–141.
2017 International Conference on Advances in Comput- Association for Computational Linguistics, 2011.
ing, Communications and Informatics (ICACCI), pages [39] David Suendermann-Oeft, Vikram Ramanarayanan,
1525–1530. IEEE, 2017. Moritz Teckenbrock, Felix Neutatz, and Dennis
[27] Katlego Mabunda and Abejide Ade-Ibijola. Pathbot: Schmidt. Halef: An open-source standard-compliant
An intelligent chatbot for guiding visitors and locating telephony-based modular spoken dialog system: A re-
venues. In 2019 6th International Conference on view and an outlook. In Natural language dialog sys-
Soft Computing & Machine Intelligence (ISCMI), pages tems and intelligent assistants, pages 53–61. Springer,
160–168. IEEE, 2019. 2015.
[28] Ming-Hsiang Su, Chung-Hsien Wu, Kun-Yi Huang, [40] Filip Jurčı́ček, Ondřej Dušek, Ondřej Plátek, and Lukáš
Qian-Bei Hong, and Hsin-Min Wang. A chatbot using Žilka. Alex: A statistical dialogue systems framework.
lstm-based multi-layer embedding for elderly care. In In International Conference on Text, Speech, and Dia-
2017 International Conference on Orange Technologies logue, pages 587–594. Springer, 2014.
(ICOT), pages 70–74. IEEE, 2017. [41] Sam Newman. Building microservices: designing fine-
[29] Sherry Ruan, Liwei Jiang, Justin Xu, Bryce Joe-Kun grained systems. ”O’Reilly Media, Inc.”, 2015.
Tham, Zhengneng Qiu, Yeshuang Zhu, Elizabeth L [42] Nicola Dragoni, Saverio Giallorenzo, Alberto Lluch
Murnane, Emma Brunskill, and James A Landay. Lafuente, Manuel Mazzara, Fabrizio Montesi, Ruslan
Quizbot: A dialogue-based adaptive learning system for Mustafin, and Larisa Safina. Microservices: yesterday,
factual knowledge. In Proceedings of the 2019 CHI today, and tomorrow. In Present and ulterior software
Conference on Human Factors in Computing Systems, engineering, pages 195–216. Springer, 2017.
pages 1–13, 2019. [43] Carlos M Aderaldo, Nabor C Mendonça, Claus Pahl,
[30] Kyo-Joong Oh, Dongkun Lee, Byungsoo Ko, and Ho- and Pooyan Jamshidi. Benchmark requirements
Jin Choi. A chatbot for psychiatric counseling in for microservices architecture research. In 2017
mental healthcare service based on emotional dialogue IEEE/ACM 1st International Workshop on Establishing
analysis and sentence generation. In 2017 18th IEEE the Community-Wide Infrastructure for Architecture-
International Conference on Mobile Data Management Based Software Engineering (ECASE), pages 8–13.
IEEE, 2017. [55] Luciana Benotti, Mara Cecilia Martnez, and Fernando
[44] Raymond ST Lee. Natural language processing. In Schapachnik. A tool for introducing computer science
Artificial Intelligence in Daily Life, pages 157–192. with automatic formative assessment. IEEE Transac-
Springer, 2020. tions on Learning Technologies, 11(2):179–192, 2017.
[45] Oliver Knill, Johnny Carlsson, Andrew Chi, and Mark [56] Jingjing Zhao, Tao Song, and Yuxia Sun. Apihelper:
Lezama. An artificial intelligence experiment in college Helping junior android programmers learn api usage.
math education. Preprint available at http://www. math. IAENG International Journal of Computer Science,
harvard. edu/knill/preprints/sofia. pdf, 2004. 47(1):pp 92–97, 2020.
[46] Anke Berns, José Miguel Mota, Ivan Ruiz-Rube, and [57] Khin Khin Zaw, Win Zaw, Nobuo Funabiki, and Wen-
Juan Manuel Dodero. Exploring the potential of a 360 Chung Kao. An informative test code approach in code
video application for foreign language learning. In writing problem for three object-oriented programming
Proceedings of the Sixth International Conference on concepts in java programming learning assistant system.
Technological Ecosystems for Enhancing Multicultur- IAENG International Journal of Computer Science,
ality, pages 776–780. ACM, 2018. 46(3):pp 445–453, 2019.
[47] György Molnár and Zoltán Szüts. The role of chatbots [58] Ho Thao Hien, Pham-Nguyen Cuong, Le Nguyen Hoai
in formal education. In 2018 IEEE 16th Interna- Nam, Ho Le Thi Kim Nhung, and Le Dinh Thang.
tional Symposium on Intelligent Systems and Informat- Intelligent assistants in higher-education environments:
ics (SISY), pages 197–202. IEEE, 2018. The fit-ebot, a chatbot for administrative and learning
[48] Aliane Loureiro Krassmann, João Marcos Flach, Anita support. In Proceedings of the Ninth International
Raquel Cestari da Silva Grando, Liane Margarida Rock- Symposium on Information and Communication Tech-
enbach Tarouco, and Magda Bercht. A process for nology, pages 69–76. ACM, 2018.
extracting knowledge base for chatbots from text cor- [59] Christof Röhrig and Daniel Heß. Omniman: A mobile
pora. In 2019 IEEE Global Engineering Education assistive robot for intralogistics applications. Engineer-
Conference (EDUCON), pages 322–329. IEEE, 2019. ing Letters, 27(4):pp 893–900, 2019.
[49] Damla Ezgi Akcora, Andrea Belli, Marina Berardi, [60] Rainer Bischoff, Ulrich Huggenberger, and Erwin
Stella Casola, Nicoletta Di Blas, Stefano Falletta, Prassler. Kuka youbot-a mobile manipulator for re-
Alessandro Faraotti, Luca Lodi, Daniela Nossa Diaz, search and education. In 2011 IEEE International
Paolo Paolini, et al. Conversational support for educa- Conference on Robotics and Automation, pages 1–4.
tion. In International Conference on Artificial Intelli- IEEE, 2011.
gence in Education, pages 14–19. Springer, 2018. [61] Mario Anzures-Garcı́a, Luz A Sánchez-Gálvez,
[50] Florian Daniel, Maristella Matera, Vittorio Zaccaria, Miguel J Hornos, and Patricia Paderewski-Rodrı́guez.
and Alessandro Dell’Orto. Toward truly personal A knowledge base for the development of collaborative
chatbots: on the development of custom conversational applications. Engineering Letters, 23(2):pp 65–71,
assistants. In Proceedings of the 1st International Work- 2015.
shop on Software Engineering for Cognitive Services, [62] Enric Mor, Francesc Santanach, Susanna Tesconi, and
pages 31–36. ACM, 2018. Carlos Casado. Codelab: Designing a conversation-
[51] Bertrand David, René Chalon, Bingxue Zhang, and based educational tool for learning to code. In Inter-
Chuantao Yin. Design of a collaborative learning national Conference on Human-Computer Interaction,
environment integrating emotions and virtual assistants pages 94–101. Springer, 2018.
(chatbots). In 2019 IEEE 23rd International Conference [63] World Economic Forum. Shaping the future of tech-
on Computer Supported Cooperative Work in Design nology governance: Artificial intelligence and machine
(CSCWD), pages 51–56. IEEE, 2019. learning, 2020. https://www.weforum.org/platforms.
[52] Martha C Pennington and Pamela Rogerson-Revell. Accessed on 14/06/2020.
Using technology for pronunciation teaching, learning, [64] Bryan Edward Penprase. The fourth industrial revolu-
and assessment. In English Pronunciation Teaching and tion and higher education. In Higher education in the
Research, pages 235–286. Springer, 2019. era of the fourth industrial revolution, pages 207–229.
[53] George Suciu, Adrian Pasat, Teodora Us, urelu, and Springer, 2018.
Eduard-Cristian Popovici. Social media cloud contact [65] Don Tapscott. The digital economy: Promise and
center using chatbots. In International Conference on peril in the age of networked intelligence, volume 1.
Future Access Enablers of Ubiquitous and Intelligent McGraw-Hill New York, 1996.
Infrastructures, pages 437–442. Springer, 2019. [66] Haluk Demirkan, James C Spohrer, and Jeffrey J
[54] Ismail Mohammed and Abejide Ade-Ibijola. Lecturer’s Welser. Digital innovation and strategic transformation.
apprentice: A chatbot for assisting novice programmers. IT Professional, 18(6):14–18, 2016.
In IEEE International Multidisciplinary Information [67] Wayne Holmes, Maya Bialik, and Charles Fadel. Arti-
Technology And Engineering Conference (IMITEC), ficial Intelligence In Education: Promises and Implica-
pages 74–81. IEEE, 2019. tions for Teaching and Learning. Center for Curriculum
Redesign, Boston, MA, USA, 2019.