The Use of ICT of Educational Purposes in the Independent Work of
Students in the Study of the Basics of Programming by Future Software
Engineers
Tetiana A. Vakaliuk
1,2,3 a
, Oleksii V. Chyzhmotria
1 b
, Olena H. Chyzhmotria
1 c
,
Dmytro S. Antoniuk
1 d
, Mykhailo G. Medvediev
4 e
and Svitlana O. Didkivska
5 f
1
Zhytomyr Polytechnic State University, 103 Chudnivska Str., Zhytomyr, 10005, Ukraine
2
Institute for Digitalisation of Education of the NAES Ukraine, 9 M. Berlynskoho Str., Kyiv, 04060, Ukraine
3
Kryvyi Rih State Pedagogical University, 54 Gagarin Ave., Kryvyi Rih, 50086, Ukraine
4
ADA University, 61 Ahmadbay Agha-Oglu Str., Baku, AZ1008, Azerbaijan
5
Cracow University of Economics, 27 Rakowicka Str., Krak
´
ow, 31-510, Poland
Keywords:
Massive Open Online Courses, Fundamentals of Programming, Software Engineering Specialists.
Abstract:
The article describes the author’s experience of using a number of information and communication technolo-
gies of education in the independent work of students in teaching the discipline “Fundamentals of Program-
ming” to future specialists in software engineering. The content of studying the discipline “Fundamentals of
Programming” and the number of hours allotted for its study in institutions of higher education in Ukraine is
analyzed. When studying the discipline “Fundamentals of Programming” at the Zhytomyr Polytechnic State
University, the study of the corresponding course on the platform of massive open online courses Sololearn
is submitted for independent work, and use of other ICTs of educational purposes. A description of the pos-
sibilities of using this Massive Open Online Course (MOOC) in teaching the discipline “Fundamentals of
Programming” for future specialists in software engineering is presented. In addition, using a pedagogical
experiment, the effectiveness of using a number of information and communication technologies of education
in the independent work of students in teaching the discipline “Fundamentals of Programming” to future soft-
ware engineering specialists was tested. The results of the pedagogical experiment showed the effectiveness
of using a number of information and communication technologies of education in the independent work of
students in teaching the “Fundamentals of Programming” to future software engineering specialists.
1 INTRODUCTION
In the process of professional training of students of
specialty 121 “Software Engineering”, some profes-
sional disciplines are required to study, in particular,
“Fundamentals of Programming”, “Object-Oriented
Programming”, “Web Technologies”, etc. All disci-
plines are studied in the manner prescribed by the ed-
ucational professional program and provide for a cer-
a
https://orcid.org/0000-0001-6825-4697
b
https://orcid.org/0000-0002-5515-6550
c
https://orcid.org/0000-0001-8597-1292
d
https://orcid.org/0000-0001-7496-3553
e
https://orcid.org/0000-0002-3884-1118
f
https://orcid.org/0000-0002-4004-6631
tain “basic” level of knowledge for the preliminary
study of the subject.
Analysis of the curricula of higher education in
Ukraine (National University of Life and Environ-
ment Sciences of Ukraine, Zhytomyr Polytechnic
State University, National Technical University of
Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”,
Odesa Polytechnic National University) showed that
the study of the discipline “Fundamentals of Program-
ming” is given from 150 to 330 hours. Note that in
some universities this discipline is divided into two
Programming and Fundamentals of Software Engi-
neering.
A sufficiently large number of hours predeter-
mines the need to submit part of the material for in-
dependent study (usually from 30% to 60% of the
644
Vakaliuk, T., Chyzhmotria, O., Chyzhmotria, O., Antoniuk, D., Medvediev, M. and Didkivska, S.
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future Software Engineers.
DOI: 10.5220/0012066700003431
In Proceedings of the 2nd Myroslav I. Zhaldak Symposium on Advances in Educational Technology (AET 2021), pages 644-657
ISBN: 978-989-758-662-0
Copyright
c
2023 by SCITEPRESS Science and Technology Publications, Lda. Under CC license (CC BY-NC-ND 4.0)
material is submitted for independent study, and uni-
versities themselves operate on this). A variety of
additional learning tools becomes useful here for
both teachers and students (Seidametova et al., 2022;
Vakaliuk et al., 2021; Kovalenko and Palamarchuk,
2018; Semerikov et al., 2020).
Massive Open Online Courses (MOOCs) has al-
ready gained popularity in the first quarter of the 21st
century, so there are a lot of articles concentrated on
that topic, even more, there are books, that are de-
voted to the disclosure of this topic from different an-
gles. For example, we can see a demonstration of the
historical perspective on various stages of develop-
ment of these courses and how their value changed,
depending on the stage (Waks, 2016), advises on op-
timizing the process of their implementation and use
according to the type and stage of development of the
information infrastructure of the educational institu-
tion advice on optimizing the process of their imple-
mentation and use respectively the type and stage of
development of the information infrastructure of the
educational institution (Mesquita and Peres, 2015) or
just perspective of its evolution from a higher educa-
tion point of view (Bennett and Kent, 2017).
Speaking about the latest research results, which
undoubtedly appeared more due to the growing pop-
ularity of distance learning as a result of the pan-
demic, it is worth paying attention to Scopus as one
of the most reliable sources of verified information.
There are currently 48 articles available in this source
that focus on this topic part of them are concentrat-
ing on the adaptation of the course to the general
type and specifics of the country’s study conditions
or just on solving some specific problems universities
are forced to face too, like overcrowded universities
on the impossibility of organizing real-time face-to-
face lessons (Naji et al., 2020). However, one of the
most important and interesting aspects of the Mas-
sive Open Online Courses study is its use in teach-
ing students a specific subject, for example, mathe-
matics (Vagaeva et al., 2021), international relations
(Kaempf and Finn, 2019), geography (Syvyi et al.,
2020), physics (Huangqing and Yanping, 2021) or
languages (Lebedeva, 2021). Still, we have to remem-
ber about digital barriers (Ling et al., 2020) that stu-
dents might have while studying that way. Those bar-
riers could make effect data results and lead to a dis-
tortion of information about the prospects for the de-
velopment of the MOOC industry in education since
every year students are better versed in digital tech-
nologies. The best way out of the situation is to test
such courses on subjects that are studied by students
of specialties related to information technology. A
good example of such subjects could be computer net-
works (Vakaliuk et al., 2020) or software engineering.
A review of various MOOC platforms showed that
they mostly contain theoretical material, test tasks;
the possibility of communication between other par-
ticipants, and, in the case of learning programming
languages, a compiler is built in to train the acquired
skills.
In the professional training of future software en-
gineering specialists in the context of a pandemic and
the Russian-Ukrainian war, a combination of tradi-
tional, distance, and blended learning opportunities,
as well as the use of various additional tools, includ-
ing massive open online courses, are becoming in-
creasingly important, which allows increasing moti-
vation and student interest.
2 LEARNING THE
FUNDAMENTALS OF
PROGRAMMING WITH
MOOCs
The purpose of studying the discipline “Fundamen-
tals of Programming” is to form students’ theoretical
basis necessary for further work, obtaining theoreti-
cal knowledge and practical skills in the algorithmiza-
tion of computational processes, the basic principles
of software development in the C programming lan-
guage.
The objectives of studying the academic disci-
pline “Fundamentals of Programming” are:
providing students with the necessary knowledge
on the theory and practice of using algorithmic
programming languages;
to form an idea among students about the main
stages of solving a computer problem;
the sequence of actions, skills, and abilities to
work with modern software, program debugging;
providing students with basic knowledge and
skills with basic algorithmic structures;
mastering by students of basic knowledge and
skills in working with arrays;
mastering by students of different methods of
sorting arrays;
providing students with basic knowledge and
skills for working with functions, as well as the
ability to implement recursive functions;
mastering students the ability to work with struc-
tures, string values, pointers;
mastering by students the basic skills of working
with repositories.
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future
Software Engineers
645
Let us give an indicative topic for studying this
discipline (as an example, the program is given, ac-
cording to which they study at the Zhytomyr Poly-
technic State University).
Content module 1. Introduction to program-
ming. Basic construction methods.
Topic 1. Introduction to programming. Basic
concepts. The concept of a method. Ways of repre-
senting algorithms. The alphabet of the C program-
ming language. Directives. Connecting libraries.
Data types. Constants and variables. Declaring vari-
ables. Operations of the C programming language.
Data input-output operators. Formatting specifiers.
Arithmetic operations. Features of working with
them. Increment, decrement. Math functions. Block
diagram. Basic elements of flowcharts. Basic algo-
rithmic constructions.
Topic 2. Branching. Comparison operations.
Logical operations. Boolean expressions. Simple
and compound logical expressions. The if branching
statement. Ternary operation. Switch statement.
Topic 3. Introduction to the Git version control
system. The concept of a repository. Existing ver-
sion control systems. Introduction to the Git version
control system.
Topic 4. Loops. The concept of a loop. Loops
with while condition. Loops with “for” parameter.
Break and continue. Loops with postcondition “do
. . . while”. The comma operation. Nested loops.
Content module 2. Arrays.
Topic 5. Setting up the program. Testing. Basic
concepts. Setting. Error types. Test types.
Topic 6. Arrays. Array concept. One-
dimensional arrays. Declaring and calling in one-
dimensional arrays. Generation of pseudo-random
numbers. Operations with one-dimensional arrays.
Topic 7. Sorting arrays. Sort by the exchange.
Sorting by the selection method. Insertion sort. Shell
sorting. Pyramid sort.
Topic 8. Multidimensional arrays. Declar-
ing and accessing multidimensional arrays. Two-
dimensional arrays. Operations with matrices.
Content module 3. Functions, pointers, struc-
tures.
Topic 9. Functions. The concept of a function.
Function prototype. Passing parameters. Functions
with a changing number of parameters. Passing an
array to a function. Recursive functions.
Topic 10. Pointers. Local and global variables.
Variable address. The concept of a pointer. Declar-
ing a variable of pointer type. Basic operations on
pointers. Features of the scanf function. Pointers and
arrays.
Topic 11. Character variables. Working with
string and character variables. String functions.
Topic 12. Structure. The concept of structure.
Arrays of structures. Programming with structures.
When studying the discipline “Fundamentals of
Programming” at the Zhytomyr Polytechnic State
University, students are recommended to study the
materials of massive open online courses as part of
their independent work. Students can take the course
offered on the MOOC platform Sololearn (Sololearn,
2023). This course provides an opportunity to study
individual theoretical blocks, and perform individual
test tasks and certain final works.
Let us consider the possibility of using MOOC
Sololearn when studying the course “Fundamentals
of Programming” as part of additional independent
work. The first thing to point out is that this course
is in English, and since this platform does not pro-
vide for any actions of teachers or instructors, it is not
possible to localize in another language.
This course involves studying the material and im-
proving skills in the basics of programming in the fol-
lowing sections: basic concepts of the C program-
ming language; conditional expressions and loops;
functions, arrays, pointers; strings and function point-
ers; structures; memory management; file and error
handling; preprocessor.
These topics fully cover the topics for study in the
main course “Fundamentals of Programming” and are
their logical addition. Another feature of this MOOC
platform is that the courses are freely available and
anyone can take them. Yes, not all features of the
platform are freely available, but if you wish, you can
purchase the full version for an in-depth study of the
material. Another feature of this platform is that each
course is provided with a separate address where you
can enter the course without wasting time searching
for the course.
When you log into your account at the address of
a specific course (Sololearn, 2023), the user opens his
profile of passing (studying) the course (figure 1).
Each section (study topic) in this MOOC includes
theoretical information (figure 2), containing material
for repeating what was learned in the classroom.
This MOOC can leave comments on all activities
of each topic. Such a section is located in the upper
right corner, by entering which a registered user at
the stage of viewing theoretical material can commu-
nicate with other registered users through comments
(figure 3).
However, it should be noted that not in all sections
of the MOOC data, such an opportunity is open im-
mediately. In addition to theoretical material, users
are allowed to view examples of program execution
and try to work with them on their own, making cer-
AET 2021 - Myroslav I. Zhaldak Symposium on Advances in Educational Technology
646
Figure 1: Personal account for studying the course.
tain changes (figure 4 and figure 5).
This platform MOOC also provides a task for test-
ing knowledge of various forms, for example, choos-
ing 1 answer from several proposed ones (figure 6)
and entering your answer (figure 7). At the same time,
it should be noted that the section of communication
through comments in such tasks becomes available
only after checking the answer. For each topic, up to
10 tasks of this type are given to consolidating knowl-
edge.
After passing the module, the user is presented
with a final test (figure 8), which consists similarly
of several questions (from 5 to 10), and according to
the result, it is set whether the module was enrolled to
him.
It should also be noted here that the next mod-
ule will not be opened to the user until he completely
completes the previous one (figure 1).
If we consider each topic offered in this MOOC,
then in section 1 “Basic concepts” there is a repe-
tition of the base of the C programming language,
namely: data types, arithmetic operators, comments
in the code, working with the console (input and
output). In section 2 “Conditional statements and
loops”, conditional statements were considered, such
as: if, else, switch, three types of loops: for, while,
do. . . while. The section also included theory on logi-
cal operators, which are &&, which means “and”, and
||, which means “or”.
Section 3 “Functions, Arrays, and Pointers” pro-
vides material that is completely repetitive to the
classroom material. As a result, in this section, there
is only a repetition of the studied material, as well as
the consolidation of the necessary skills for working
with arrays, functions, and pointers.
Section 4 “Strings and Function Pointers” has a
new topic that doesn’t overlap with the classroom ma-
terial. This is the “Pointers to Functions” topic, which
explains in detail how to declare and access functions
using pointers. The next section is “Structures and
Unions”. It should be noted here that again students
were offered a new topic for study this is the topic
“Union”, in which students can learn about unions,
which allow storing different types of data in the same
place in memory, accessed through the dot operator
located between the name of a variable and the name
of a particular union member.
In Section 6 “Memory Management”, the follow-
ing functions were considered for memory allocation
on dynamic array memory (malloc, calloc), array ex-
pansion (realloc), and freeing (free). This material
is not new to the student, since this topic completely
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future
Software Engineers
647
Figure 2: Theoretical material in the MOOC Sololearn.
overlaps with the topic for studying in the classroom,
so students in this section only consolidated their
knowledge and skills.
Section 7 “File and error handling” is the largest
section in terms of the amount of new material that
is submitted for independent processing. By study-
ing the topics in this section, students can learn how
files are handled in the C language, which is used for
this function, what binary files are, and how to handle
errors.
Section 8 “Preprocessor” contained some of the
material that students studied in the classroom and
some of the new. The topics covered in this section
are preprocessor directives, conditional compilation
directives, and preprocessor statements.
Note that the advantage of such MOOC is that all
the material is structured, and for each topic, there is
theoretical material, attempts to work with the pro-
gram code, and knowledge testing.
The use of this MOOC for self-processing by stu-
dents within the framework of the course “Fundamen-
tals of Programming” contributes to the consolidation
of the mastered theoretical material, since the course
contains a repetition of the theory presented to stu-
dents in lectures on this discipline, as well as the de-
velopment and improvement of skills in programming
in the C language.
During the course, students can view the progress
bar (figure 9), and after successful completion of the
course, students receive a certificate (figure 10).
Note that the MOOC Sololearn is adaptive for var-
ious systems and, accordingly, devices, so the user has
the opportunity to use it from any device.
The use of MOOCs in the educational process
of higher education contributes to the assimilation of
the material through one’s own practical experience,
mostly independent. After all, students can get ac-
quainted with additional theoretical information, view
various examples with solutions in the C language,
and at the same time they can also try to change a
fragment of the program code using the knowledge
gained; perform a separate task by writing code frag-
ments in the answer, and, of course, take a test to test
your knowledge.
The use of such a MOOC provides 100% cover-
age of the topics provided by the training program for
studying the discipline “Fundamentals of Program-
ming”. Note that MOOC is not the main one in the
study of the course “Fundamentals of Programming”.
It is only an auxiliary tool for consolidating knowl-
AET 2021 - Myroslav I. Zhaldak Symposium on Advances in Educational Technology
648
Figure 3: The ability to communicate through comments in
the MOOC Sololearn.
edge and skills during lectures and practical exercises.
In particular, to study the basics of programming,
students are also offered the following MOOC for in-
dependent study:
1. C programming (https://moocfi.github.io/courses/
2016/aalto-c/en/)
2. Learn the Basics of C Program-
ming Language (https://www.eduonix.
com/courses/Software-Development/
Learn-the-Basics-of-C-Programming-Language)
3. Programming Fundamentals (https://www.
coursera.org/learn/programming-fundamentals?
specialization=c-programming)
4. Writing, Running, and Fixing Code
in C (https://www.coursera.org/learn/
writing-running-fixing-code?specialization=
c-programming)
5. Pointers, Arrays, and Recursion (https://www.
coursera.org/learn/pointers-arrays-recursion?
specialization=c-programming)
6. Interacting with the System and Manag-
ing Memory (https://www.coursera.org/
learn/interacting-system-managing-memory?
specialization=c-programming)
7. Learn C (https://www.learn-c.org/)
The listed MOOC are offered for additional study
of the basics of programming, their content covers the
topics of studying the course “Fundamentals of Pro-
gramming”. However, to fully study the course, for
example, on the MOOC Coursera, you need to com-
plete 4 courses.
Note that within the framework of studying the
discipline “Fundamentals of Programming”, students
have the right to choose any similar course that fully
covers the study of the topics of this discipline, of
course, by the decision of the teachers.
It should be noted that in order to motivate stu-
dents to use additional means, including MOOC, the
Zhytomyr Polytechnic State University decided to
count certificates of certain courses as separate com-
ponents of the study of the subject (as part of the study
of individual topics). To enroll as a separate topic or
within the subject is decided by teachers who teach
the basics of programming to collective solutions. In
addition, at the discretion of the teachers, the comple-
tion of such courses is counted as a separate part of
the number of points for the overall rating. This helps
to motivate students to successfully complete the full
course.
It should be noted that most of the proposed
MOOCs are in English, which, along with master-
ing certain programming knowledge, helps to im-
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future
Software Engineers
649
Figure 4: Ability to work with program code in Sololearn.
Figure 5: Working with program code in Sololearn.
AET 2021 - Myroslav I. Zhaldak Symposium on Advances in Educational Technology
650
Figure 6: Choice of 1 correct answer.
prove the level of foreign language proficiency, which
is a mandatory requirement for future programmers,
testers and project managers when applying for a job.
We also note that once a year, before the start of a
new academic year, it is necessary to check the avail-
able new MOOC for a qualitative update of the pro-
posed list.
Students are encouraged to master these materi-
als on their own as an additional source of study of a
particular subject.
These courses were chosen in accordance with
the subject “Fundamentals of Programming”, as well
as in accordance with the competencies that students
have at the end of the course. The experience of
teachers working with international software compa-
nies will also play a role in choosing a course.
The work of students with MOOC provides:
study of theoretical material on a particular sub-
ject;
implementation of scientific projects using ac-
quired knowledge and skills;
implementation of joint projects with their further
presentation and defense in front of a group of stu-
dents.
In addition, other teaching aids should be used for
independent work of students. In particular, to get
acquainted with theoretical information, we offer for
use a number of electronic textbooks on the basics of
programming in the C language:
1. https://metanit.com/cpp/c/1.1.php
2. https://www.codesdope.com/c-lets-start/ (fig-
ure 11)
3. https://www.codingeek.com/
c-programming-tutorials/ (figure 12)
4. https://www.codingeek.com/
tutorials/c-programming/
beginning-with-c-programming-language/
5. https://www.geeksforgeeks.org/
c-programming-language/
It should be noted here that all but the first two
resources are in English. These electronic manuals
are clearly structured, freely available, and offered to
a wide range of users. The second service is quite
popular because it contains not only theoretical infor-
mation but also specific examples for each topic.
Such online resources allow not only to get ac-
quainted with theoretical material, but also to commu-
nicate with each other through comments on relevant
topics. Often, the authors of such resources support
feedback and provide users with comprehensive an-
swers.
Teachers offer students for preliminary acquain-
tance with theoretical material and subsequent discus-
sion of problematic issues of individual topics in the
classroom. In addition, at the discretion of the teacher,
the material can be taken out for independent study by
students, and then the presentation of the material at
lectures by the students themselves in front of their
fellow students for additional points.
In addition, students are encouraged to use
freely available videos, in particular, the free online
programming course in C for beginners (https://www.
youtube.com/playlist?list=PL76809ED684A081F3).
This course is logically divided into lessons, where
the author offers his own vision of learning the C
programming language. So, for independent work,
and familiarization with the material, this is a fairly
useful resource that clearly shows all the possibilities
of the C programming language.
The listed means contribute to the consolidation of
theoretical knowledge on the basics of programming,
as well as self-learning and self-development.
In addition, to consolidate practical programming
skills, the authors offer a number of available tests to
test knowledge and programming skills:
1. C Programming Online Test https:
//www.tutorialspoint.com/cprogramming/
cprogramming online test.htm
2. C Programming Test https://www.indiabix.com/
online-test/c-programming-test/
3. C Online Test https://www.testdome.com/tests/
c-online-test/62
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future
Software Engineers
651
Figure 7: Entering your answer.
Figure 8: Module test.
Figure 9: Course completion scale.
4. C Quiz | C Online Test https://www.javatpoint.
com/c-quiz (figure 13)
5. C Online Test http://www.pskills.org/c.jsp (fig-
ure 14)
6. Online C Programming Test Free MCQ’s to
test your C Skills https://data-flair.training/blogs/
online-c-programming-test/
7. C Online Quiz Test https://codescracker.com/
exam/showtest.php?subid=2 (figure 15)
8. C Programming Online Test https://www.
jobstron.com/c-programming-online-test
It should be noted here that some of the tests are
AET 2021 - Myroslav I. Zhaldak Symposium on Advances in Educational Technology
652
Figure 10: Certificate.
generalized for the entire course C (1, 3 – hereinafter,
respectively, the number of the means for testing), and
the other part is a set of tests on topics (2, 4, 5, 6, 7,
8). Note that these tests are divided into topics in dif-
ferent ways. Some services offer detailed breakdowns
into topics (2, 4, 5, 6), while others are superficial and
cover only selected topics.
Here it should be noted that, again, the decision of
teachers, to pass tests covering most topics, may be
accompanied by additional motivation in the form of
additional points instead of lost ones (for late delivery,
for example, laboratory work).
In addition to all of the above for independent
work, students are offered a parallel study of various
programming languages. To do this, students are of-
fered the same resources, only with an emphasis on
a different programming language. Also, dual edu-
cation started this year at the Zhytomyr Polytechnic
State University. Its essence lies in the fact that in the
course of studying the basics of programming in the
1st semester, students can study object-oriented pro-
gramming in courses from ISM Ukraine. As a result
of taking these courses, students were asked to have
an interview on theoretical material with the course
teacher and subject teachers at the university, and as
a result, receive an appropriate grade in the next sub-
ject. This contributes to the development of the self-
organization of students, the organization of their em-
ployment, and usually the use of various additional
means for self-study.
It should be noted that the list of proposed ICTs
for teaching the basics of programming was formed
by the authors as a result of their many years of ex-
perience (Vakaliuk et al., 2020, 2021) and other their
works, as well as preliminary scientific research on
the selection of appropriate learning tools. There-
fore, the each teacher can choose the range of infor-
mation and communication technologies for teaching
independently. In particular, as you know, now there
Table 1: Comparative distribution of students from the CG
and the EG by the level of educational achievements in the
fundamentals of programming at the beginning and end of
the pedagogical experiment.
Level of academic Before After
achievement CG EG CG EG
Beginner (1-59) 10 10 9 5
Average (60-73) 25 27 21 10
Sufficient (74-89) 21 19 24 33
High (90-100) 9 8 11 16
Total 65 64 65 64
are many games and simulators for learning program-
ming languages. The only drawback in our case is that
there are no such tools specifically for learning the C
language. However, if the basics of programming in
some higher education institutions are studied on the
example of another programming language, the use
of such games contributes to even greater interest and
motivation of students.
In addition, another tool for effective independent
work of students we see Gitlab, which on the basis
of the Zhytomyr Polytechnic State University is used
not only in classroom work, but also in extracurricular
activities. Thus, in cooperation with ISM Ukraine, on
the basis of this institution of higher education began
to implement the so-called program “Code Review”,
in which employees of IT companies provide their
recommendations to students to successfully improve
their own laboratory work. All this is done within
the framework of using the Gitlab service for success-
ful communication of all members of the educational
process.
To test the effectiveness of the implementation of
a number of information and communication tech-
nologies of education in the independent work of
students in the study of the discipline “Fundamen-
tals of Programming”, a pedagogical experiment was
conducted based on the Zhytomyr Polytechnic State
University, which consisted in comparing the learn-
ing outcomes according to the traditional method of
teaching the basics of programming and the author’s
using a number of information and communication
technologies of education in the independent work of
students.
For this, the applicants for the education of 1 year
of study were divided into the EG and the CG (exper-
imental and control groups, respectively). In the CG,
training was carried out according to the traditional
method, and in the EG using a number of informa-
tion and communication technologies of education in
the independent work of students.
Statistical data of the EG and CG before and after
the experiment are presented in table 1 and figure 16.
To test the statistical equivalence (to the exper-
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future
Software Engineers
653
Figure 11: https://www.codesdope.com/c-lets-start/
Figure 12: https://www.codingeek.com/c-programming-tutorials/
iment) and statistical non-equivalence (after the ex-
periment), the Pearson test was applied, the result of
which was found:
at the beginning of the pedagogical experiment, it
was found that χ
2
emp
= 0.36, χ
2
emp
< χ
2
0.05
, there-
fore, the samples do not have statistically signif-
icant differences, and this means that the compo-
sition of students in the EG and CG is approxi-
AET 2021 - Myroslav I. Zhaldak Symposium on Advances in Educational Technology
654
Figure 13: C Quiz | C Online Test.
Figure 14: C Online Quiz Test.
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future
Software Engineers
655
Figure 15: C Online Quiz Test.
Figure 16: Comparative distribution of students in CG and EG according to the level of academic achievements in the funda-
mentals of programming at the beginning and end of the pedagogical experiment.
mately equivalent;
at the end of the pedagogical experiment, it was
found that χ
2
emp
= 8.48, χ
2
emp
> χ
2
0.01
and this indi-
cates that the samples have statistically significant
differences at this stage.
Since the statistical data testify to the positive dy-
namics of a sufficient and high level of educational
achievements in the experimental group at the end
of the pedagogical experiment, which is confirmed
experimentally, we can conclude that the experimen-
tal methodological system of teaching “Fundamentals
of Programming” using a number of information and
communication technologies of education in the in-
dependent work of students is more effective than the
traditional one.
AET 2021 - Myroslav I. Zhaldak Symposium on Advances in Educational Technology
656
3 CONCLUSIONS
When teaching the basics of programming to future
software engineers, changes should be made to the
curriculum of the discipline with the addition of a
number of information and communication technolo-
gies of education for independent work. As the con-
ducted pedagogical experiment showed, the use of a
number of information and communication technolo-
gies of education in the independent work of students
in teaching the basics of programming to future bach-
elors in software engineering helps to increase the
level of student’s educational achievements. In ad-
dition, as the students themselves point out, the use
of various tools in the educational process contributes
to their self-development, motivation, and interest,
and helps to consolidate the acquired knowledge and
skills. As for the prospects for further research, the
authors see them in the search and development of
new qualitatively new learning tools for the basics of
programming.
REFERENCES
Bennett, R. and Kent, M., editors (2017). Massive Open On-
line Courses and Higher Education What Went Right,
What Went Wrong and Where to Next? Taylor & Fran-
cis.
Huangqing, L. and Yanping, X. (2021). Online teaching
research on college physics by using different teach-
ing tools. Physics Education, 56(3):035007. https:
//doi.org/10.1088/1361-6552/abdee1.
Kaempf, S. and Finn, C. (2019). Teaching International Re-
lations through the Format of a Massive Open Online
Course (MOOC). International Studies Perspectives,
22(1):1–24. https://doi.org/10.1093/isp/ekz025.
Kovalenko, O. and Palamarchuk, Y. (2018). Algorithms of
Blended Learning in IT Education. In 2018 IEEE
13th International Scientific and Technical Confer-
ence on Computer Sciences and Information Tech-
nologies (CSIT), volume 1, pages 382–386. https:
//doi.org/10.1109/STC-CSIT.2018.8526605.
Lebedeva, M. (2021). Instructional Design of Skill-
Balanced LMOOC: a Case of the Russian Language
MOOC for Beginners. Journal of Universal Computer
Science, 27(5):485–497. https://doi.org/10.3897/jucs.
67136.
Ling, V., Sotnikova, L., Rodionova, I., Vasilets, I., Zav-
jalova, O., Fedorovskaya, V., and Datkova, E. (2020).
Online educational resources for students and digital
barrier. TEM Journal, 9(1):373–379. https://doi.org/
10.18421/TEM91-51.
Mesquita, A. and Peres, P., editors (2015). Furthering
Higher Education Possibilities through Massive Open
Online Courses. IGI Global. https://doi.org/10.4018/
978-1-4666-8279-5.
Naji, K., Ibriz, A., and Mourdi, Y. (2020). Adoption of
MOOCs by Emerging Countries Seeking Solutions
to University Overcrowding: Literature Review and
Feedback from the First Scientific MOOC Held by
Sidi Mohammed Ben Abdullah University – Fez, Mo-
rocco. International Journal of Emerging Technolo-
gies in Learning (iJET), 15(22):78–103. https://doi.
org/10.3991/ijet.v15i22.16945.
Seidametova, Z., Abduramanov, Z., and Seydametov, G.
(2022). Hackathons in computer science education:
monitoring and evaluation of programming projects.
Educational Technology Quarterly, 2022(1):20–34.
https://doi.org/10.55056/etq.5.
Semerikov, S., Striuk, A., Striuk, L., Striuk, M., and Sha-
latska, H. (2020). Sustainability in Software Engi-
neering Education: A case of general professional
competencies. E3S Web of Conferences, 166:10036.
https://doi.org/10.1051/e3sconf/202016610036.
Sololearn (2023). Introduction to C. https://www.sololearn.
com/learn/courses/c-introduction.
Syvyi, M. J., Mazbayev, O. B., Varakuta, O. M., Pan-
teleeva, N. B., and Bondarenko, O. V. (2020). Dis-
tance learning as innovation technology of school ge-
ographical education. In Burov, O. Y. and Kiv, A. E.,
editors, Proceedings of the 3rd International Work-
shop on Augmented Reality in Education, Kryvyi Rih,
Ukraine, May 13, 2020, volume 2731 of CEUR Work-
shop Proceedings, pages 369–382. CEUR-WS.org.
https://ceur-ws.org/Vol-2731/paper22.pdf.
Vagaeva, O. A., Galimullina, N. M., Liksina, E. V., Efremk-
ina, I. N., and Lomakin, D. E. (2021). Role of MOOCs
in teaching Mathematics to students majoring in En-
gineering. Journal of Physics: Conference Series,
1889(2):022043. https://doi.org/10.1088/1742-6596/
1889/2/022043.
Vakaliuk, T., Spirin, O., and Kontsedailo, V. (2021). Crite-
ria for selecting open web-oriented technologies for
teaching the basics of programming to future soft-
ware engineers. Educational Technology Quarterly,
2021(1):3. https://doi.org/10.55056/etq.16.
Vakaliuk, T. A., Yefimenko, A., Bolotina, V., Bailiuk, Y.,
Pokotylo, O., and Didkivska, S. (2020). Using Mas-
sive Open Online Courses in Teaching the Subject
”Computer Networks” to the Future IT Specialists.
In Sokolov, O., Zholtkevych, G., Yakovyna, V., Tara-
sich, Y., Kharchenko, V., Kobets, V., Burov, O., Se-
merikov, S., and Kravtsov, H., editors, Proceedings
of the 16th International Conference on ICT in Ed-
ucation, Research and Industrial Applications. Inte-
gration, Harmonization and Knowledge Transfer. Vol-
ume II: Workshops, Kharkiv, Ukraine, October 06-10,
2020, volume 2732 of CEUR Workshop Proceedings,
pages 665–676. CEUR-WS.org. https://ceur-ws.org/
Vol-2732/20200665.pdf.
Waks, L. J. (2016). The Evolution and Evaluation of
Massive Open Online Courses: MOOCs in Motion.
The Cultural and Social Foundations of Education.
Palgrave Pivot, New York. https://doi.org/10.1057/
978-1-349-85204-8.
The Use of ICT of Educational Purposes in the Independent Work of Students in the Study of the Basics of Programming by Future
Software Engineers
657