Teaching Algorithms and Programming First Year University
students on Base of Distance Learning System DL.GSU.BY
M. S. DOLINSKY
Faculty of Mathematics and Programming Technologies
Francisk Skorina Gomel State University
Sovetskaya Str.104, 246019, Gomel
BELARUS
Abstract. This article describes the technology of teaching text programming to first-year students based on
the DL.GSU.BY website. The main advantages of the technology include “zero entry threshold”, training
adapted to the student, many years of experience in practical application, effectiveness, and scalability. The
following issues are consistently considered in the article: idealized goal setting, students' use of a program-
ming language of their choice from a variety of modern programming languages when performing practical
tasks in the subject, clear verification of goal achievement, blended learning, effective personalization of the
educational process, non-standard organizational and technical solutions, learning effectiveness. The idealized
goal setting includes the need to teach students to algorithmic reformulation of the problem condition; posses-
sion of a set of basic language constructs, as well as basic built-in procedures and functions; ability to use
basic algorithms on one-dimensional and two-dimensional arrays, sets of plane points, lines, queue; ability to
develop and debug new algorithms. Effective personalization of the educational process is ensured by using
the following methods: each lesson the student is offered a choice of activities that correspond to his current
level of training; automatic verification of solutions is provided with the service "assignment of tests"; the sys-
tem of automatic differentiated learning is used.
Keywords: Remote programming training, website DL.GSU.BY, Gomel State University
Received: June 21, 2021. Revised: January 18, 2022. Accepted: February 23, 2022. Published: March 26, 2022.
1 Introduction
One of the global trends in higher education is the
transition to blended learning, when a significant
part of the educational process is transferred from
the classroom to the Internet. With the help of a
computer network, students receive tasks and the
necessary theoretical information in a wide variety
of forms (text, graphics, audio and video materi-
als), complete tasks and send them for verification
to tutors or automatic solution verification sys-
tems. The literature studied by the authors in pre-
paring this article can be divided into four areas:
review materials, proposals for the transition to
blended learning, a variety of systems used in
training, a presentation of work experience.
The first direction, review materials, includes
works [1] and [2].
The work [1] is devoted to an overview of strate-
gies and means of implementing blended learning.
The work [2] is a review and analysis of computer
education in Japanese universities. The authors of
the work identified the following types of comput-
er education:
In faculties specializing in computer disci-
plines
In faculties that do not specialize in computer
disciplines, but have computer disciplines as
an important part of their education
General computer education for students of all
faculties, usually in the first or second years of
study
Computer education for students who wish to
obtain a license to teach computer science in
schools.
The second direction - approaches to the
transition to blended learning - includes works [3-
4]. The paper [3] postulates the need for the digital
transformation of education and explains in detail
what is meant by the digital transformation of edu-
cation. The paper [4] offers an overview of the
directions for the development of blended learning
in Asian universities.
The third direction is a variety of lan-
guages and systems used in teaching. Among the
proposed systems are mentioned “GeoGe-
bra”[5],Google Classroom[6], Moodle[7,8].
WSEAS TRANSACTIONS on ADVANCES in ENGINEERING EDUCATION
DOI: 10.37394/232010.2022.19.6
M. S. Dolinsky
E-ISSN: 2224-3410
52
Volume 19, 2022
The fourth direction combines works that rep-
resent the real experience of learning with the help
of computer technologies in universities: pro-
gramming [9], computer thinking [10], chemis-
try[11], basic medical knowledge[12], earth sci-
ences[13], anatomy [14] ,WEB design[15], neuro-
anatomy [16], English language [17], new educa-
tional technologies [18].
2 Problem Formulation
This article describes the experience of the author's
implementation of blended education at F. Skorina
Gomel State University in teaching programming
to first-year students in the first semester. The au-
thors have been actively involved in preparing
schoolchildren for Olympiads in computer science
and programming for many years [19]. The expe-
rience of this work formed the basis of classes with
students [20]. However, it should be noted that
work with schoolchildren is carried out within the
framework of circles of interest, and therefore it is
not necessary to spend significant efforts on teach-
ing those who do not want to - they simply stop
going to the circle. The situation with students is
fundamentally different. It is necessary to work
with everyone. It has become especially difficult
since about 2005, when the enrollment for paid
education increased significantly (up to 50% of the
enrollment), as a result, the average level of prepa-
ration of first-year students has fallen sharply, not
only in special (in computer science and program-
ming), but also in general (for example, in mathe-
matics, Russian language and oral speech). When
at the Faculty Council teachers began to complain
about this situation to the dean, he replied, "Teach
these, there will be no others." Some help in such a
situation is that students have an exam in the sub-
ject. Thus, the teaching methodology should de-
velop in three directions: the learning process
should be feasible, interesting, forcing (for those
for whom the ability and interest is not enough).
Some help in such a situation is that students have
an exam in the subject.
3 Problem Solution
3.1. Idealized Goal Setting
As part of teaching in the first semester of first-
year students the subject "Fundamentals of Algo-
rithms and Programming", the authors set them-
selves the goal of teaching students the following:
a) Algorithmic reformulation of the problem
statement
The original problem statement usually contains
some kind of legend or "custom" explanation of
the work the program is supposed to do. The stu-
dent must reformulate the condition of the prob-
lem, retaining its essence, in terms of processing
numbers, symbols, strings, points (given by X and
Y coordinates on the plane) or their one-
dimensional/two-dimensional arrays.
b) Possession of a set of basic language con-
structs, which we include declarations of variables
and arrays, assignment operators, FOR and
WHILE conditions and loops, as well as built-in
procedures and functions:
Number processing: abs, sqr, sqrt, odd
String processing: length, delete, insert, copy, pos
Character handling: chr, ord
Type conversions: val, str
I/O: readln, writeln, assign, reset, rewrite, close
c) Possession of a set of basic algorithms, such
as: Basic algorithms for processing one-
dimensional arrays: summation; counting ele-
ments with specified properties; maxi-
mum/minimum element; search for an element that
has the specified properties. Sorting by exchange,
bubble, count. Sorting with numbers.
Transferring basic algorithms to two-
dimensional arrays and their components (rows,
columns, diagonals).
Algorithms for finding distances on a
plane: between two points, from one point to sev-
eral ones, between adjacent points of a set of
points, from each point to each in one set of points,
between all pairs of points of two sets.
Basic string algorithms: splitting a sen-
tence into words, forming all the different charac-
ters of a string, linear counting the number of
characters in a string, reversing a string.
Queue: the problem of the horse (the min-
imum number of moves the knight can make from
one cell of the chessboard to another) and the
problem of pieces (the number of pieces into
which a piece of paper will fall apart after cutting
out some cells).
d) Ability to apply basic algorithms when solv-
ing problems, their modifications, compositions
and super positions.
e) Ability to develop new algorithms and pro-
grams, perform manual scrolling of algorithms
and debugging programs in the development envi-
ronment using debugger commands: put variables
WSEAS TRANSACTIONS on ADVANCES in ENGINEERING EDUCATION
DOI: 10.37394/232010.2022.19.6
M. S. Dolinsky
E-ISSN: 2224-3410
53
Volume 19, 2022
and arrays in the view window, conveniently posi-
tion the source text and data view windows on the
screen, execute a line, execute to the cursor, enter
the procedure, execute to the end.
3.2 Multilingualism when Studying the
Subject
The student has the right to submit solutions to the
proposed problems in any of the programming
languages installed in the verification system, in-
cluding Pascal, C++, Java, Python, C#. If neces-
sary, new language versions and new languages
are installed in the system. Training for beginners
is conducted in Pascal due to the presence of a
powerful automatic learning system that has been
developed, operated and developed for more than
20 years. However, there are lecture notes for the
above programming languages, which are also de-
veloped by interested students as needed.
3.3 Clear Verification of Goal Achievement
The examination score for a semester for a student
is actually determined by the number of tasks that
he solves in 1.5 hours - from 0 to 10 on the follow-
ing topics:
1. Introduction to programming
2. One dimensional array
3. Two-dimensional array
4. Geometry
5. Strings
6. One dimensional array
7. Two-dimensional array
8. Geometry
9. Strings
10. Queue
As you can see, the topics of problems 2-5 are
exactly same as the topics of problems 6-9. The
difference is in the level of difficulty. The tasks in
topics 2-5 are chosen in such a way that any stu-
dent who has more or less conscientiously studied
during the semester can cope with them, even with
a zero level of preliminary readiness. Tasks 6-9
actually check the quality of the student's skills in
developing algorithms and debugging programs.
Many years of practice and adaptation of the use of
the approach has shown its effectiveness in as-
sessment (showing a range from 6 to 9 adequate to
the skills of students). The ability to solve the 10-
th problem shows the readiness of the student to
learn algorithms that are more complex.
3.4 Blended Learning
The educational process is conducted using the
appropriate course in the distance learning system
DL.GSU.BY, which since 2005 has the historical
name "Computers, programming, algorithms -
20nn". The course provides access to theory; issu-
ing tasks; automatic verification of solutions; dif-
ferentiated learning that implements an individual
educational trajectory that adapts to the student;
motivating display of learning outcomes in a varie-
ty of contexts. All this guarantees the possibility of
effective independent work of students in class-
rooms and outside them.
The tasks of the teacher are to present clearly
and concisely the new theory in lectures, to organ-
ize and maintain a working atmosphere in the
classroom. Particular attention should be paid to
the development of independent work skills of
first-year students. Very many of them in the first
lessons try to demand constantly and unnecessarily
the help of the teacher, instead of thinking and
solving the problem on their own or with the help
of a teaching system DL.GSU.BY.
3.5 Effective Personalization of the
Educational Process
Our goal in organizing training sessions is formu-
lated as follows:
Each student works every minute in every lesson
- Desirable - because he is interested
- At least, because the system and/or the teacher
and/or "public opinion" forces him to.
How and due to what this goal is largely achieved
in real practice?
At each lesson, the student is offered a
choice of activities corresponding to his current
level of training.
At the lectures (after reading the new theory,
as it is correct for 20-30 minutes), tasks are offered
on the topic of the lecture of DIFFERENT levels
of complexity. In addition, during lectures, you
can solve problems both on your own laptop alone,
and in a team of two people who are close in terms
of the current level of knowledge (determined by
the current assessment of each).
In practice and during work at home, the stu-
dent has a choice of both topics (from previously
studied) and the level of complexity of the tasks
being solved.
Automatic solution check (programs written
by students in lectures and practice), performed in
real time within a few seconds.
Service "Concession of tests", which allows
the student to find out the test (input data and the
WSEAS TRANSACTIONS on ADVANCES in ENGINEERING EDUCATION
DOI: 10.37394/232010.2022.19.6
M. S. Dolinsky
E-ISSN: 2224-3410
54
Volume 19, 2022
correct answer for them) on which his program
does not work correctly.
Automatic differentiated learning sys-
tem on each of the topics studied: introduction to
programming, one-dimensional array, two-
dimensional array, geometry, strings, all these five
topics - at two levels of complexity (basic and
simplified), queue. So that each student can study
independently both in the classroom and at home.
Packages of tasks for the development
of thinking integrated into thematic training
which the student can skip if it is impossible or
unwilling to perform such tasks.
Availability of the theory in lectures and
practical classes.
Individual assignments. Problems are
collected in the corresponding folder both by topic
and by olympiads, for which there are no solutions
or explanations in the course. For each task, its
level of difficulty is displayed, described by two
numbers: how many people solved this task and
the average number of days per solving. That is,
the number of days from the moment the task was
set to the current day, divided by the number of
people who solved this task. A student can choose
any problem for himself, solve it in any program-
ming language, and then describe his solution in
the forum and post a readable self-documented
source text of the solution. After checking the
teacher, such a task is transferred to another place
in the course - "Individual tasks with a description
of solutions in the forum." The work itself is high-
ly rated on the current academic record. Besides,
links to all such descriptions of solutions are col-
lected by topic, both regardless of the program-
ming language, and separately for each of the pro-
gramming languages. Thus, students get the oppor-
tunity for an additional self-developing type of
learning: solve problems if possible, and finally
read the solution on the forum.
Competitive elements introduced into the
educational process:
After each training session, an automatically
generated result of the work performed by
each student in this session is entered in a spe-
cial topic “Who works how” on the course fo-
rum: in which topic he worked, how many
tasks he solved, where he is in the topic. At the
same time, higher in the table are students who
have gone further in training.
A weekly test is carried out, which contains
about 30 tasks for developing programs of var-
ious levels of complexity from the simplest to
the most complex. The tasks are both for top-
ics covered and not yet studied in lectures. At
the end of the table of results is presented to all
students.
Every week at the lecture, after reading the
theory, it is proposed to solve about 30 tasks of
varying complexity on the topic studied at the
current lecture. At the end of the lesson, the
results table is presented to the students.
Permanently during the semester, students
have access to the current grade sheet, which
evaluates the results of students in the semes-
ter, including work in lectures, practice, at
home, also showing the current examination
grade of each.
3.6 Non-standard Organizational and
Technical Solutions
Automated registration of absenteeism and
their processing. One of the problems of modern
education in our university is the absence of clas-
ses by students. The authors understand that there
may be both real objective and subjective reasons
for this, as well as "student's exploration of the
boundaries of what is permitted." Therefore, omis-
sions are introduced as a separate column in the
academic record and negatively affect the assess-
ment of work in the semester. After almost seven
missed classes, the assessment becomes negative
(for those who work best in lectures and practice),
and for those who work worse, the assessment can
become negative after five passes. Therefore, stu-
dents are given the opportunity to WORK omis-
sions. At any time convenient for him, he can go to
the site, work for an hour and a half (from the first
to the last sending according to the work protocol.
Then choose the date of the omission, which was
worked out and the system will generate a message
in the special forum topic “Working out omissions
- 20nn” of the following form: such student from
such group worked on such date from such time to
such time, solved so many tasks, total time. This
message also includes a direct link to the log of
this work.
The teacher from under his account can click
on this link, check whether there was a work or its
simulation and accept the work (omission is elimi-
nated) or refuse the work - the omission will re-
main.
In order to ensure continuous work on the sub-
ject during the semester, practice without a teacher
(at home) is allowed only during the week after the
absence.
The fight against the indiscipline of students
during classes. The manifestations of such indis-
cipline include being late for classes, “long
WSEAS TRANSACTIONS on ADVANCES in ENGINEERING EDUCATION
DOI: 10.37394/232010.2022.19.6
M. S. Dolinsky
E-ISSN: 2224-3410
55
Volume 19, 2022
breaks, the absence of a notebook and pen in class,
distraction by mobile phones during class, using a
laptop for other than class purposes, etc. For most
students, an explanation of the rules is enough, in
extreme cases, one-time remarks-reminders. How-
ever, there are also “active explorers of the bound-
aries of what is permitted” who do not respond to
explanations for everyone and even personal
comments. This is the pass of the current lesson
with the student’s right to “reset” it if the next
same pair (exactly in a week) the student conducts
without remarks and reminds the teacher of the
desire to reset the pass set for a remark.
Using a subject forum to support inde-
pendent learning. The authors try to provide stu-
dents with the opportunity to work independently
both in the classroom and outside of them.
In particular, the forum has a topic “Help,
please - 20nn”, in which a student can ask a ques-
tion of interest to him including problems to be
solved. If none of the students promptly answers,
then the teacher does. It is very important that at
the beginning of this topic, links to questions and
answers to them systematically accumulated. Thus,
often the student may not need to ask his own
question, if such a question has already been asked
and the answer to it is recorded.
In addition, at the initiative of one of the
students (2009 year of study), a topic was created
"Teach each other, learn from each other -
20nn", in which student can write how he/she
solved a difficult / individual problem or read how
another managed to do it. The teacher manually
constantly updates the table of contents of the top-
ic.
Topic "Students Opinion -
20nn"designed to receive feedback from students
both in the learning process and after its comple-
tion.
Topic "Computer, programming, algo-
rithms - 20nn"at the beginning contains all organ-
izational messages for new students, as well as
links to materials on all topics studied. The last
post in the topic contains links to materials on the
last read topic.
Finally, the topic "Bonuses -
20nn"contains the marks of each student in "bo-
nuses" for the last lecture; in addition, there ap-
pear, as necessary, messages about bonuses for one
or another cognitive activity of students in a lec-
ture, practice or in work at home.
Multiple retakes of the exam during the
semester. If a student regularly studies, then in
fact his mark on the exam is determined by the
mark on the control cut. From about the middle of
the semester, a student is allowed to apply for a
control cut and write it once a week. In this case,
the assessment is fixed only in the direction of in-
crease.
3.7 Learning Effectiveness
At the first practical lesson, an entrance control
section is held. It fixes the initial preparation of
students before entering the university, with a
slight adjustment for the fact that there are one or
even two lecture weeks before the first practical
lesson, and many students, motivated by the lec-
tures and the opportunity to work at home, they are
making good progress in knowledge during this
initial period. However, on average, the assess-
ment of each at the end of the semester increases
by a value from 4 to 9. In addition, the authors
consider the following “subjective” indicators of
learning effectiveness to be important. Most stu-
dents start studying immediately upon arrival,
without waiting for a call about the beginning of
the class, and "do not notice" the break between
the hours of the class, continuing to work. During
classes, there is almost perfect silence, and every-
one is working actively and enthusiastically.
4 Conclusion
This paper presents many years of experience and
methodology for teaching the basics of algorithms
and programming in the first semester of the first
year students of the Faculty of Mathematics and
Programming Technologies of the F. Skoryna
Gomel State University. Any university and teach-
er can use it. Either directly by subscribing their
students to the appropriate course of the
DL.GSU.BY distance learning system, or by bor-
rowing the teaching methodology, but using other
technical and software solutions. The authors refer
to the important components of the methodology:
the use of a personal computer and a projector by a
lecturer, the use of laptops by students in lectures,
direct consolidation of theoretical material by
practice, operational verification of programs -
solving problems, a table of results in real time at
lectures and practices, solving problems in teams.
References:
[1] Aznam N., Perdana R., Jumadi J, Nurcahyo H.,
Wiyatmo Y. The Implementation of Blended
Learning and Peer Tutor Strategies in
Pandemic Era: A Systematic Review
// Advances in Social Science, Education and
WSEAS TRANSACTIONS on ADVANCES in ENGINEERING EDUCATION
DOI: 10.37394/232010.2022.19.6
M. S. Dolinsky
E-ISSN: 2224-3410
56
Volume 19, 2022
Humanities Research, Vol. 541, 2021,
pp.906-914
[2] Kakeshita T., Ohtsuki M. Survey and Analysis
of Computing Education at Japanese
Universities: Non-IT Departments and Courses
// Olympiads in Informatics, Vol. 13, 2019,
pp.57-80
[3] Jones K., Ravishankar S. Higher Education
4.0. The Digital Transformation of Classroom
Lectures to Blended Learning // Springer
Singapore, 2021
[4] Zaugg H., Graham C., Lim C., Wang T.
Current and Future Directions of Blended
Learning and Teaching in Asia // chapter 16 in
the book "Blended Learning for Inclusive and
Quality Higher Education in Asia", 2021,
pp.301-327
[5] Stahl G. Redesigning Mathematical
Curriculum for Blended Learning // Education.
Sciences, Vol. 11, 2021, pp.165-177
[6] Astarilla L., Warman D. The Effect of Google
Classroom in Blended Learning on University
Students’ English Ability // Journal of English
for Academic, Vol 8, No 1, 2021, pp.12-23
[7] Antwi-Boampong A. Blended Learning
Adoption in Higher Education: Presenting the
Lived Experiences of Students in a Public
University from a Developing Country // The
Turkish Online Journal of Educational
Technology, Vol. 20, Issue 2, 2021, pp.14-22
[8] Oktaria S., Sasongko R., Kristiawan M.
Development of Blended Learning Designs
using Moodle to Support Academics of The
Curriculum in University of Bengkulu // Jurnal
Studi Guru dan Pembelajaran (Indonesia),
Vol. 4, No. 1, 2021, pp.118-126
[9] Lodi M., Malchiodi D., Monga M.,
Morpurgo A., Spieler B. Constructionist
Attempts at Supporting the Learning of
Computer Programming: A Survey
// Olympiads in Informatics, Vol. 13, 2019,
pp.99-122
[10] Weigend M., Vanicek J., Pluhar Z., Pesek I.
Computational Thinking Education Through
Creative Unplugged Activities // Olympiads
in Informatics, Vol. 13, 2019, pp.171-192
[11] Chamberlain S., Elford D., Lancaster S.,
Silve F. Tailored Blended Learning for
Foundation Year Chemistry Students
// Chimia, Vol 75, 2021, pp.18–26
[12] Lovey T., O'Keeffe P., Petignat I. Basic
Medical Training for Refugees via
Collaborative Blended Learning: Quasi-
Experimental Design // Journal of Medical
Internet Research, Vol 23, No 3, 2021
https://doi.org/10.2196/22345
[13] Bond С., Cawood A. A role for virtual
outcrop models in blended learning
improved 3D thinking and positive
perceptions of learning // Geoscience
Communication,Vol.4, Issue 2, 2021,
pp.233–244
[14] Sarkar S., Sharma S., Raheja S.
Implementation of Blended Learning
Approach for Improving Anatomy
Lectures of Phase I MBBS Students Learner
Satisfaction Survey // Advances in Medical
Education and Practice,Vol. 12, 2021,
pp.413–420
[15] Sulistiyarini D., Sabirin F., Ramadhani D.
Effect of Project-Based Learning Through
Blended Learning on Website Design Skills //
Journal of Educational Science and
Technology, Vol. 7, 2021, pp.58-66
[16] Border S., Woodward C., Kurn O., Birchall
C., Laurayne, H., Anbu, D., Taylor, C. and
Hall, S. Working in Creative Partnership
with Students to Co-Produce Neuroanatomy
e-Learning Resources in a new era of Blended
Learning. // Anatomical Sciences Education,,
2021, Accepted Author Manuscript,
https://doi.org/10.1002/ase.2090
[17] Jerry M., Yunu M. Blended Learning in Rural
Primary ESL Classroom: Do or Don’t
// International Journal of Learning,
Teaching and Educational Research, Vol 20,
No 2, 2021, pp. 152-173
[18] Musawi A., Ammar M. The Effect of
Different Blending Levels of Traditional and
E-Learning Delivery on Academic
Achievement and Students’ Attitudes towards
Blended Learning at Sultan Qaboos University
// The Turkish Online Journal of Educational
Technology,Vol.20, Issue 2, 2021, pp.127-139
[19] Dolinsky M. Gomel training school for
Olympiads in Informatics // Olympiads in
Informatics, Vol. 10, 2016, pp. 237-247
[20] Dolinsky M. An approach to teach
introductory-level computer programming //
Olympiads in Informatics,Vol. 7, 2013,
pp. 14-22
Creative Commons Attribution License 4.0
(Attribution 4.0 International, CC BY 4.0)
This article is published under the terms of the
Creative Commons Attribution License 4.0
https://creativecommons.org/licenses/by/4.0/deed.e
n_US
WSEAS TRANSACTIONS on ADVANCES in ENGINEERING EDUCATION
DOI: 10.37394/232010.2022.19.6
M. S. Dolinsky
E-ISSN: 2224-3410
57
Volume 19, 2022