Extracurricular Training in Informatics in Ruse

The authors underline their opinion that it is preferable to organise the extracurricular education on city level instead of forming autonomous school groups. Putting together students from different schools forces them to share their knowledge and programming techniques. All this helps them get familiar with new practices and experience and inspires ambitions for growth and progress.


Introduction
Informatics is a relatively new subject in the Bulgarian schools.It is closely related to modern society and its importance constantly increases.The rapid development of information technologies and their influence on human life automatically attract youngsters.Nowadays students in Bulgarian schools study two subjects -Informatics on an earlier school level and Informatics and Information Technologies in higher school grades.
One way of satisfying students needs in that direction is to provide them with the possibility of extracurricular education.A lot of them find self-training acceptable as they have their own computers and at the moment there are lots of useful books on the market.
Another approach for extracurricular education is the formation of additional classes at schools conducted by school teachers.At present this form is widespread in the Bulgarian schools.The main aim of the extracurricular education is to enhance the knowledge required by the regular school curricula, which are monitored by the Ministry of Education, Youth and Science (MEYS).
Competencies and skills can be enhanced at special centers for additional education.Students are grouped in teams according to their interests, each team being provided with proper guidance.Training is carried out not only by secondary school teachers but often by university people.
These groups are composed by students who have shown remarkable achievements not only in their regular studies at school but also in various regional and national competitions.There are groups of students who merely wish to deepen their knowledge in a given field and do not strive to compete.The work in different groups is organized according to students' background ant interests.

Our Experience
Ruse is among the several towns in Bulgaria with traditions in organizing competitions in Informatics as well as in training successful contestants.The first Bulgarian competition in Informatics was held in Ruse in 1982 (within the Winter Mathematics Fests) with the participation of 18 students from 9 regions.Lately, the Informatics contests were enhanced with other events like Spring Tournament, National Olympiad, International Olympiad, Balkan Olympiad and Autumn Tournament.
A special center for additional education, called Center of Students Scientific and Technical Creativity (CSSTC; http://cutnt-ruse.com), is responsible for the extracurricular programs in Informatics.The programs are supported by the local authority.The main purpose is to give a chance to the gifted students who wish to do extra work to deepen their knowledge and skills, as well as to take part in team work.
The authors introduce their opinion and experience related to the ways of students training for gaining more comprehensive knowledge in Informatics and achieving competitive results.
Yet in the beginning of Informatics training at Ruse schools, it was distinctive that the formation of a specialized group efficiently functioned.Teaching of a group was in accordance with a specific program focusing on the individual student's work to intensively master the knowledge.
Later, when the requirements of national contests were further developed, two separate students' groups had to be formed.The reason arose from the differences in the school background of students of different ages, as well as the need to organize separate contests for younger and elder students.
The concept for these groups evolved and zigzagged throughout the years.The technology of training now is enforced by its goals: identification, teaching, growth and fostering gifted students.
The authors considered three groups of students, selected according to their age and background, who wish to do extracurricular work in Informatics (Grigorova and Hristova, 2002): • beginners -children up to 10-11 years who have no programming skills, but wish to gain knowledge and to compete; • intermediate group -children that have shown affinity for competitive Informatics and have at least one year experience as beginners, at the age of 12-15; • advanced -students at the age of 15-19 with several-year-experience as contestants.

Teaching the Beginners
The pupils in this group have not a clear idea what kind of knowledge and abilities should possess to take part successfully in Olympiads and competitions in Informatics.They come to school willing to be taught and have the opportunity for earlier participation in Informatics competitions.That is why the program for their education is versatile and very flexible.It includes elements of computer and algorithmic knowledge, programming language and logical thinking.
The practice shows that the new knowledge has to be presented in portions and should be supported with appropriate examples.Special attention should be paid to analyzing the problem that must be solved.It is very important for the children to understand that behind the words in each computer problem solution stays a mathematical model.They must find out this model by answering the next three questions: • What is given in the problem to be solved?
• What must be taken from the problem?
• How from the given we can obtain what we are looking for?
After that the children get used that "the given" is the input data in their program, "the taken" is the output result from the program, and the third question answer gives the sequence of operations to solve the problem.
In such way pupils learn to combine different aspects of knowledge and skills -technical with sophisticated logical and reflective issues.
For solving of Informatics problems it is often needed to use knowledge, which taught in the next classes at regular schools.This forces the teacher in Informatics to familiarize the students with those lessons, so that pupils apply that knowledge in their programs.Statistics show that better results are achieved when children in the 4th and 5th grades attend both Informatics and Mathematics extracurricular programs.The enforced mathematical training helps them achieve better results and in Informatics (Hristova, 2006(Hristova, , 2007(Hristova, , 2008)).
It is to be noted that at 10-11 years of age the pupils' thinking gradually evolves to design algorithms and generalization but it must be further continuously developed.On one side, the subject of programming education is the design of algorithms, which main characteristic is "generality", i.e., the possibility for applying one algorithm in solving a class of problems.That automatically means a high level of abstraction and parameterization to be applied for the solution of given problems.Children face difficulties especially in this direction.They successfully acquire knowledge of syntax of different language constructions, but it is hard for them to rationalize the semantic characteristics and apply them as required.
A student should possess analytical mind in order to become a good programmer.In the informatics problems the specificity has to be presented by a set of permissible data values, in difference of mathematical problems.That ability is obligatory for informatics contestants.
In the beginning of programming education, students learn the principles of algorithmic thinking and basic algorithmic constructions better by solving problems, processing numerical data.The basis of learning new ideas in informatics includes mathematical problems, not containing unknown mathematical terms.In this way the attention of pupils is directly oriented to rationalization of the new material, taught by the trainer.
One of the difficult issues is to train students in combining computer skills and knowledge in school mathematics with formal rules of programming languages.The student has to learn how to enter the text of the program.He must know the programming environment very well in order to get a working program.Reaching the final goal -a properly working program, requires knowing all the stages of program development and execution.To create and test an executable program, it is necessary to test it by using well selected test examples, to control the whole efficiency of the program.
Training contests also are organized where students are placed in conditions, similar to those of real contests.The purpose is future contestants to be trained to share the time determined for solving the contest problems correctly, to choose the problem which they can cope with fastest and to pay due attention to all details, connected with their successful participation.
The preliminary training of students help them in getting better oriented at real contests.This has important psychological effect, because pupils accept very emotionally the faults and mistakes that leave lasting traces in them.Failure at a contest makes some of them unwilling to participate in programming contests because they think they will never manage to succeed.
A methodical system was developed in Ruse including 106 problems and methodical materials.It is a comprehensive instrument in the extracurricular training of Informatics to beginners.The selection of problems is intended to develop specific skills of future constants.The level of problems' difficulty is balanced by the inclusion of problems given on previous contests.The system is built up on the basis of 7 methodical sub-systems of problems covering the syllabus of teaching Informatics to beginners.All sub-systems are of equal structure involving main objective, relevant competence and skills, practical work, sequence of problems and methodical peculiarities of the problems usage.
The applied methods focus on teaching informatics using basic algorithms in the following succession: introduction problem, illustrating a basic algorithm; a series of complicated problems with the same basic algorithm as a constituent; approbation of the acquired knowledge through a test on solving problems given at previous competitions with the application of the same basic algorithm; analysis and explanation of the suggested solutions followed by assessment of their effectiveness; presenting teacher's recommended solution in case that students' solutions are not effective; analyzing teacher's solution and discussing the key points giving emphasis to the applied basic algorithms.
The methods described include components which contribute to the creative thinking, developing learners' potentials to the utmost; fostering the innovative and original solutions as well as the aspiration of competence manifestation.
The Bulgarian ranking list of contestans in Informatics is valued and carefully maintained in groups of grades.The top 10 students in the list have the right to participate in special school circles in Informatics organized by the MEYS and UMB.Table 1 shows the number of participants from 6th and 7th grades within 2006-2009 who have been appointed to take part in these school circles.The participants from Ruse have been trained on the basis of the methods described http://www.math.bas.bg/infos.Ruse participants have a due presence.It is a proof for the high level of competitive competence compared with the results of the participants from other regions of Bulgaria, i.e., the effectiveness of training in Ruse is competitive and it ensures at average 13% of the places appointed for the groups of 6th and 7th grades.

Teaching the Intermediates
Students must learn the syntax and semantics of programming languages.They have to know very well the programming environment and the sequence of steps so as to prepare a working program.
The main teaching purpose in this group is to acquire the basics of a programming language, programming principles and development of algorithms.Students learn the foundations of cardinal numerical systems, data types, base data structures.It is carried out through lectures and students self-training during the classes.The speed in designing algorithms and writing programs is encouraged.
A very important point in children's training process is the participation in different kinds of contests.It is an opportunity for the pupils to manifest their knowledge and compare themselves with the other participants from various regions in our country.

Teaching the Advanced Students
Usually the group comprises students at the age of 15-19, being 10-12 in number.Students involved have shown marked interests and abilities in the field of competitive Informatics.Most of them have been prize-winners at various Informatics contests for younger groups.The students possess solid skills and attitude to independent work and self-training.They know very well one or two programming languages and apply successfully the acquired programming skills.That is why teaching in programming is not the first aim.It is presented as familiarization with a new library, new programming techniques or tricks.
The classes are organized in a different way.Some of them take the form of discussion on certain topics for which one of the students prepares a presentation aiming to acquaint the group with the core of the topic.For consolidation, students are given problems on the discussed topic.Each student presents his solution and explains the realization of the developed algorithm.An important issue of the discussion is the algorithm complexity as well as the time limits of its execution.
The standard practice of presenting a new material by the instructor is a rare occasion, as it is not appropriate for the advanced group.In most cases, the new reading is preliminarily given to the students, followed by a discussion during the classes.Each student puts questions on unclear points and the others, helped by the teacher, try to answer in order to clarify them.
Studying the methods of implementation and processing of complex data structures is an important part of training the advanced students.Choosing the appropriate data structure in solving a given problem sometimes is the bottleneck and the knowledge of data structures and their utilization is very helpful.
The major part of classes is dedicated to students' training for local and national competitions.Students are given a problem to solve by themselves or a group discussion on the given problem takes place prior to its solving.The purpose is to train students in spreading the time between different contest problems, in choosing the "easiest" of them and paying attention to all details ensuring their success.A key exercise is the discussion and working out on problems which were given on passed contests but not successfully solved.Thus the students progress by learning from their own mistakes.

Popularization of the Extracurricular Study in Informatics
The successful identification and teaching of gifted children in the area of Informatics strongly depends on their early introducing to the subject.For the last 4 years "Bistra & Galina" Foundation has promoted a training class "Programming for beginners" within its Summer Children's Academy.In two weeks children at the age of 8-11 get acquainted with the process of development a working computer program.The classes are organized in the form of preparing algorithms for simple games, for problems with attractive input & output and simple logic.Creating the programs goes in line with presenting the main elements of the programming language (C++, Pascal, etc.) and learning patterns.Then the programs are executed on computer and children are encouraged to give input examples and guess the output.
The lessons are carried out with the help of one or two assistants, while secondary schools students from the extracurricular groups in Informatics are taught at CSSTC.Thus the children come to know about these groups and later become members of them.

The Results
For 27 years of extracurricular training in Ruse, the members of the formed groups have shown significant achievements participating in national contests (see Table 2; For the latest 20 years we had practically always had a participant in the extended Bulgarian teams trained for the IOI and BOI.

Conclusions
The long-standing experience of the authors as trainers in the field of extracurricular work in Informatics and in Competitive Informatics convinced them that the organization of such activities on a city level, as it is the practice in Ruse, is preferable in comparison with the autonomous school groups.Putting together students from different schools forces them to compare and exchange their knowledge, and ensures stimulating circumstances for improvement and progress.
The presented three-level-model of gifted students training is functioning for more than 10 years and is proved by the significant achievements of our students.

Table 1
Number of participants from the city of Ruse in school circles supported by MEYS and the Union of Mathematicians in Bulgaria (UMB)

Table 2
The results of Ruse students, participating in national contests for the period 1982-2008 http://infoman.musala.com;http://www.math.bas.bg/infos).The records include seven medalists of IOI, five medalists of BOI and one medalist of JBOI.