Keywords

1 Introduction

This case study provides a detailed description of the first university-level programming and computer science training in Hungary, which started in 1957 at the University of SzegedFootnote 1 due to the strenuous efforts of Professor László Kalmár. The aim of this study is twofold: to add to the literature on Kalmár’s work, focusing on his activities in the field of computer science education, and, at the same time, to add a detailed study from the Eastern Bloc to the research on the history of computer science education.

Kalmár is recognized internationally more for his work in mathematical logic through the 1930s to the 1950s than for his contributions to computer science, even though his achievements in the field were (posthumously) recognized by IEEE with the Computer Pioneer Award in 1996. Within Hungary, he is often referred to as “the father of computer science in Hungary” or “the pioneer of Hungarian computer science” [1, 2]. Kalmár earned such epithets due to his tremendous impact on the field of computer science in Hungary. He devoted the last two decades of his life to computer science and contributed to every aspect of it, including theoretical computer science, computer design, philosophy of cybernetics, organization of the field in Hungary, and its education. Thus, it is impossible to understand the history of computing in Hungary without Kalmár’s contributions. Still, the only source in English devoted solely to his work in the field is Makay’s short [3], and some sections of survey papers, e.g., Kovács [4, Sect. 7], while the Hungarian sources that discuss his work in the field [5, 1, 2] touch upon his educational activities only briefly. This paper addresses this gap in the literature concerning Kalmár’s educational work in computer science and its impact on the early generations of programmers in Hungary.

The other goal of this case study is to contribute to the history of computer science education. Just as in the case of the history of computing in general, the history of computer science education has only a few sources in English from the Eastern Bloc. In the case of Hungary, only Raffai [6, Sect. 3] and Sántáné-Tóth [7] are available in English besides some scattered remarks in survey papers discussing the history of computing of the country as a whole. Although this paper focuses narrowly on Hungary, it displays some more general challenges such a program had to face in the Eastern Bloc as well.

When the training started in 1957, there was no running computer in the country yet, and there was no computer at Szeged until 1965. Thus, it had to function without a computer in place for several years while being the only training for programmers at the university-level in the country. This led to some serious problems in the beginning, as well as rather unique solutions, as discussed in detail in the sections Lack of Internships and Programming Without Computers. Although this case might be extreme even within the Eastern Bloc, it shows rather well that some of these countries faced quite different challenges that those of the West. Besides the scarcity of computers, many of these countries lacked nationwide strategic plans and funding for years to come, unlike for example in the UK [8, 9] and France [10]. Hence, this study not merely augments the sources in English on the history of computer science education in Hungary, but also serves as an addition to a broader Eastern European picture as well. In order to be a useful source for further research, quite a lot of detail is provided, especially in the appendices, about early enrollments, curricula and faculty, etc.

This case study is based on the following archival sources besides the already available literature on Kalmár’s work in English and Hungarian. The Kalmár Nachlass in the Klebelsberg Library at the University of Szeged holds several relevant documents. Most importantly, the folder ‘Lev-12’ contains about 100 pages of Kalmár’s official correspondence related to the different programming and computer science training and majors from 1957 to 1974 [11]. The section The Fast Track to the First Programming and Computer Science Training and many details in the appendices are based on this folder. Besides this folder, I used Kalmár’s personal correspondence and some of his unpublished manuscripts, for example [12]. The use of these archival materials is indicated throughout the text below. Another source for this paper that has to be mentioned here is Sántáné-Tóth [13], which is an indispensable source on the history of computer science in Hungarian higher education. The book contains information about 30 universities and colleges and was the product of a collaboration coordinated under the umbrella of the Forum of Information Technology History at the John von Neumann Computer Society. A shorter, informative English summary of the research is provided in [7].

The structure of the paper is as follows. First, I provide some context about the level of computerization and the system of higher education in Hungary. This is followed by a short description of Kalmár’s work on computer science and his creation of a community of researchers and educators in this field. Then, the administrative road to the first programming and computer science training is presented in detail. Next, in the sections Lack of Internships and Programming without Computers, I discuss the two biggest problems the lack of computers in Szeged posed for the training. This is followed by an overview of other early programming and computer science training in Hungary, the later growth of the training in Szeged, and Kalmár’s writings related to computers and education. The Appendices include the curricula of the first three classes and the titles of the Master’s Theses written by the students in those classes, as well as “Kalmár’s fictional machines”, and a description of their use as a teaching material in an unpublished abstract of Kalmár’s.

2 Computers and Education in Late 1950s Hungary

To provide context for the programming and computer science training at Szeged, I quickly describe the level of computerization in Hungary and the relevant features of its university education system.

It is well known that the computerization of the Eastern Bloc lagged behind the US and Western Europe, see for example [14,15,16]. However, the computerization of Hungary started out relatively slowly even within the Eastern Bloc, not only in comparison to the Soviet Union but to Poland and Czechoslovakia as well [16, 17].

The first vacuum tube computer in Hungary was running reliably only from early 1959. It was built by the Cybernetics Research GroupFootnote 2 (founded in early 1956) of the Hungarian Academy of Sciences in Budapest. The group received the blueprints and some of the parts of the Soviet M-3 computer and built the first electronic vacuum tube computer in the country. The M-3 showed its first “signs of life” during 1958 and ran reliably by 1959 [18,19,20]. By the end of that year, there were three running computers in the country (two Ural-1 computers were installed in other research institutes), all of them in the capital, Budapest. In fact, there was no computer outside of Budapest until 1965!

Hungary caught up with the region by the early 1970s and became a successful member of the Ryad project in the 1970s [21]. For an overview of the history of information technology and computer developments in Hungary, see Szentgyörgyi [22].

In order to understand the beginnings of computer science education, we should consider natural sciences education in Hungary in the 1950s. Those who wanted to study natural sciences had to enroll as high school teachers with two majors (with very few exceptions). Thus, most people who received education in mathematics earned a mathematics-physics or a mathematics-descriptive geometry high school teacher degree. These degrees are considered to be equivalent to a Master’s Degree. Their program consisted of four years of coursework including pedagogy and psychology classes. By the late 1950s, these programs were extended to five years to include about a year of teaching practice in a high school at the end and required a thesis to be written and defended in one of the two majors.

The only exception in the case of mathematics was the applied mathematician major offered by Eötvös University in Budapest from 1950. It trained the students to be employed in the industry or at research institutes and did not require coursework in pedagogy and psychology. However, this major accepted fewer than 15 people per year.

3 László Kalmár’s Work in Szeged

As we will see below, programming and computer science education in Szeged was started due to Kalmár’s one-man mission in 1957. The training that started with only three students gradually became a major with higher enrollments. Of course, this growth required an increase in the number of instructors and in the institutional background. In this section, I briefly discuss Kalmár’s career and the institutional changes that accommodated the growing program.

László Kalmár was born in 1905 and worked at the University of Szeged from 1927 until his retirement in 1975. He became an eminent mathematical logician by the end of the 1920s. Although he first learned about mathematical logic and Hilbert’s proof theory from von Neumann’s [23], meeting Hilbert was decisive for Kalmár’s career in choosing mathematical logic as his main focus. In 1928, Kalmár attended Hilbert’s address at the International Congress of Mathematicians in Bologna [24] and spent the Summer Term of 1929 in Göttingen. There he attended Hilbert’s course on Set Theory, the last third of which was devoted to mathematical logic and proof theory ([25, p. 2, 5, 19]. From the 1930s through the 1950s, he worked on recursion theory, the reduction of the decision problem, incompleteness and undecidability; see [26,27,28] for examples. The following two facts show Kalmár’s acknowledgement of and acceptance by the international community of logicians. First, during the 1940s and 1950s, Kalmár was a member of the editorial board of the Journal of Symbolic Logic, the first journal dedicated solely to the topic. Second, when Kalmár applied for a professorship at the University of Szeged in 1946 (which he received in 1947), his letters of recommendation were from John von Neumann [29, p. 226], Alonzo Church [30, pp. 156–157] and Haskell B. Curry.

Besides research, Kalmár was clearly interested in education as well. Together with his lifelong colleague and friend Rózsa Péter, he paved the way for the acceptance of logic in Hungarian mathematics. They presented expository talks and papers both for academic [31, 32] and wider audiences [33], and introduced logic as a subject to university curricula. (On Kalmár and Péter’s contributions to mathematics and logic education in Hungary see [34]).

Around the mid 1950s, Kalmár’s interest turned toward the applications of logic to computer design and to engineering in general, automata theory, and cybernetics. He devoted most of his time to these subjects until his death in 1976. Kalmár was extremely productive in his last two decades and had a tremendous impact on computer science research and education in Hungary. His work earned him such epithets as “the father of computer science in Hungary” and “the pioneer of Hungarian computer science” [1, 2], and was also recognized by IEEE, receiving their Computer Pioneer Award posthumously in 1996. Because it is almost impossible to list all of Kalmár’s achievements in this field, I can only provide a short but hopefully illuminating list of his activities below.

Kalmár knew about the newly founded Cybernetics Research Group in Budapest and the plans to build the M-3 computer. He regularly visited the Group, attended and delivered talks at their meetings and maintained a good relationship with the members of the Group.

Kalmár started his own seminar at the mathematics department in Szeged in the spring of 1956 to explore his new interests. This seminar led to the founding of the Mathematical Logic and its Applications Research Group with Kalmár as its head in 1957. The activities of the group included the construction of the (Szeged) Logical Machine (Fig. 1) and the Electronic Ladybird, a conditioned reflex model, built by his research assistant Dániel Muszka in cooperation with members of the Pedagogy and Psychology Department in 1957 [35, pp. 48–59]. Kalmár also designed a computer that could be programmed in a mathematical formula language [36]. Although he had several iterations of the plans, the computer was sadly never built in Hungary. However, it had an impact on the MIR computer built between 1963 and 1966 at the Kiev Institute of Cybernetics.Footnote 3 In 1963 he founded the Cybernetics Laboratory, which grew rapidly after the arrival of the M-3 computer to Szeged in 1965, and later became the first computer center outside the capital. In 1967, another research group was founded in Szeged to conduct research in mathematical logic and automata theory.

Fig. 1.
figure 1

Kalmár and Muszka with the (Szeged) Logical Machine around 1957 [38].

Besides designing computing devices, Kalmár published extensively in theoretical computer science and even on the philosophical problems of cybernetics. He founded the journal Acta Cybernetica in 1969, which is still running today. Kalmár also organized several domestic and international workshops and conferences devoted to these topics. The Colloquium on the Foundations of Mathematics, Mathematical Machines and Their Applications, which he organized in 1962 in Tihany, Hungary, was attended by such illustrious scholars as Alonzo Church (Fig. 2), Haskell B. Curry, John McCarthy and Yehoshua Bar-Hillel [39]. In addition, he regularly attended and contributed papers to conferences on computational linguistics [40], and applications of computers and computer science in the fields of medicine [41] and heavy industry [42]. Through these activities, Kalmár had a tremendous impact on the scientific communities in Hungary that did research in computer science.

Fig. 2.
figure 2

taken by András Ádám at the Colloquium on the Foundations of Mathematics, Mathematical Machines and Their Applications, Tihany, 11–15, September 1962. (picture published with Ádám’s approval.)

A picture showing Kalmár and Church,

Kalmár was an active member of the international community as well. In addition to attending multiple international conferences every year, he had an extensive correspondence with scholars from both the “East” and the “West” and visited academic institutions and computer centers around the world. Furthermore, he spent the winter of 1958–1959 in China at the invitation of Fudan University in Shanghai as part of the Hungarian-Chinese cultural treaty. China’s first computer, the DJS-1 (or 103) built from 1961, was also based on the Soviet M-3 computer [43 and 44, pp. 151–157]. Over the course of three months, Kalmár delivered lectures about the general problems of programming computers, particular arithmetic operators and algorithms for the M-3 computer, and mathematical logic and computability in Shanghai, Beijing, Wuhan, and Hangzhou [20, p. 2063 and 2065]. During the 1960s, Kalmár represented Hungary and the Hungarian Academy of Sciences in the “Committee of the Scientific Problems of Computer Science and Technology” of the “academies of friendly [socialist] states”.

Just as with logic, Kalmár was invested in the education of programming and computer science as well. He regularly delivered expository talks to academic and wider audiences, and he was singlehandedly responsible for starting the university-level training of programmers in Hungary in 1957. To accommodate the growing numbers of programming and computer science students, in 1967 an independent Foundations of Mathematics and Computer Technology Department was created with Kalmár as the head of the department. In 1971, this department morphed into the Computer Science Department, still headed by Kalmár until his retirement in 1975. Through his seminars, research groups, the computer center and independent department, Kalmár created a large community of talented computer science scholars and educators. This community was able to supply instructors for the education of future computer scientists. (See Appendix A for the names and biographical information for the instructors of the first couple classes of the training.) The next section discusses the short bureaucratic prehistory of the training, while the later sections provide the details of the first couple classes of the program.

4 The Fast Track to the First Programming and Computer Science Training

According to Varga [1] and Sántáné-Tóth [13] Kalmár wanted to start a major with a focus on programming and computer science, similar to the Applied Mathematician major in Budapest, but with a focus on programming and computer science. However, his requests were denied by the Ministry of Education and Culture.Footnote 4

After all, in 1957 Kalmár was allowed to start the first programming and computer science training at the university-level in Hungary. I use the term “training” here, because the first iteration of this program was neither a major in the sense of mathematics and physics high school teacher double majors, nor in the sense of the applied mathematician major provided by Eötvös University.

This section describes the timeline of the rather quick official process that led to the start of the training. It is based on, and closely follows Kalmár’s official letter to Ágoston Budó, Dean of the School of Natural Sciences at the University of Szeged, dated March 25, 1960. The letter can be found in the ‘Lev-12’ folder [11]. The 9-page letter describes in detail the administrative road to start the training. Kalmár’s description appears to be precise, as many of the documents mentioned in the letter can also be found in the folder.

On 15 May 1957, the Ministry of Education and Culture permitted 5% of talented students with double majors to drop one of their majors at the beginning of their third or fourth year in order to gain deeper knowledge and conduct research in their other major.Footnote 5 However, the Ministry kept the right to specify the number of such students with mathematics or biology majors on a year by year basis.

On 5 July Kalmár made an applicationFootnote 6 to the Ministry to allow his department to train such talented students, dropping their second, non-mathematics major for the programming of computers (“digital calculators”) and their theory. Kalmár argued that there was a need for such training, as the country would need “programming mathematicians” at the Cybernetics and other research groups, as well as at large factories, in order to run the M-3 continuously, and to supply it, and future computer centers, with programs and problems to solve. He suggested that the Ministry communicate with the Cybernetics Research Group and the Planbureau (the government body responsible for economical planning) to determine the number of programming experts needed in the near future. He proposed that after their coursework at Szeged, the students could have an internship, a practical training, on the M-3 computer of the Cybernetics Research Group in Budapest.

As he did not receive any notification about a decision, Kalmár inquired at the Ministry upon returning from an academic trip abroad on 8 or 9 September. He was informed that the Ministry approved the training. However, the students would have to study more traditional applied mathematics classes, e.g., partial differential equations, besides programming and computer science. They would earn the title High School Mathematics Teacher – Applied Mathematician.

On 10 September, Kalmár recognized that the University of Szeged did not yet receive any official approval of the training. In a personal letter he urged the Ministry to send the official documents for him to be able to start preparing the training. Two days later, on 12 September, he received a call from the Ministry informing him that the official approval was on its way to the university and he could begin preparations for the training. On the same day, Kalmár announced the start of the new training to the students on the department bulletin boards and organized an informative meeting about it.

On 16 September, Kalmár was informed by the Dean of the Faculty of Science that the official approval arrived and that the headcount of the training would be limited to 3 students. On the next day, Kalmár announced to the students that they would have to submit a special application to the Dean’s Office in order to enroll in the new training.

Students submitted their application to the training two days later, on 19 September. Two students at the beginning of their third year and four students at the beginning of their fourth year applied. The committee, consisting of Kalmár and two other professors of mathematics, accepted third-year student József Jónás and fourth year students Ilona Fidrich and László Leindler. The students were notified on 23 September about the decision.

The curriculum of the training was approved on 21 September by the Dean’s Office of the Faculty of Science. The classes began on the 26 September 1957. (The semester began a couple of weeks earlier; thus the other classes were already going on for a while.)

To sum up: during the course of the summer of 1957 the Ministry of Education and Culture approved the University of Szeged to start a programming and computer science training for three students. These students were allowed to drop their second major in order to enroll this training. Though the focus of the training was in programming and computer science, they also had to learn further, “more traditional”, topics in applied mathematics. After their fourth year in Szeged they were to go through a practical training internship at the Cybernetics Research Group in Budapest. The location of the internship was a necessity, as computers were to be found only in Budapest at the time. At the end they earned a High School Mathematics Teacher – Applied Mathematician degree. Sometimes they were informally referred to as Calculator Applied Mathematicians. (For the curricula of the first three classes and the titles of the Master’s Theses written by the students in those classes, see Appendices A and B.)

This approval process might appear to be extremely quick. However, Kalmár already had a sizable reputation. He was appointed as a professor in 1947 and became a corresponding member of the Hungarian Academy of Sciences in 1949. He also served as the president of the University of Szeged during the 1950–1951 academic year [45, p. 17]. And most importantly, as Kalmár emphasized in his application letter, there was an urgent need for programmers in the foreseeable future.

Let us take a quick look at the international situation for comparison. The training at Szeged started only four years after University of Cambridge’s one-year training, called Diploma in Numerical Analysis and Automatic Computing, which was offered from the fall of 1953, and is considered to be the first computer science training ever [46, p. 96]. In the U.S., as Fein reports [47], there were about 150 universities that offered some kind of computer science or computer related course, seminar, lecture series, etc. in the country by 1959. However, “[o]nly a few universities have made a determined effort to select a field of interest, set up a policy and goal, and implement it” (p. 9). The first computer science department in the U.S. was founded at Purdue University in 1962. The newly founded department started Masters and PhD programs already in its first semester, leading to their first graduates in 1964 and 1966 respectively [48, 49]. However, the earliest PhDs awarded in computer science in the U.S. were given in 1965 [50]. In the Soviet Union, according to Ershov and Shura-Bura [51, Sect. 6], the first course on programming was taught by Lyapunov in the 1952–1953 academic year in Moscow, and the first graduate degrees were defended during the mid-1950s. Also in 1952, “several universities started a new specialty [master’s equivalent level] in ‘computing mathematics’ in addition to the existing specialty in mathematics” (p. 178), with courses predominantly in mathematics and numerical methods. It was only in 1969 that a new computational mathematics specialty was started to fulfill the growing needs for programmers in the country (p. 181). Thus, although the computerization of Hungary began relatively late, its computer science and programming education was timely.

5 Lack of Internships

As mentioned above, there was no computer in Szeged (or anywhere outside Budapest) until 1965. Moreover, though the number of computers was growing in the country, only the M-3 computer at the Cybernetics Research Group could be visited by students and faculty of educational institutions. Thus, every student internship had to be completed at the M-3.

The first class of the training consisted of two fourth-year and one third-year student. By the summer of 1958, the two fourth year students, Ilona Fidrich and László Leindler, completed their high school mathematics teacher major and were missing only their internships to complete the applied mathematician component of their degree.

As the prescribed length of the internship was a year and could take place only in Budapest, the students needed a stipend to be able to attend it. Kalmár asked the Mathematical Committee of the Academy of Sciences to provide such stipends in June of 1958. As the stipends were still not approved by the end of July, both fourth year students accepted the high school mathematics teaching jobs they were offered. The third member of the class, József Jónás, had a similar experience one year later upon finishing. Although Kalmár took action already in April of 1959 to secure a stipend for him, it was still not confirmed by the summer. Jónás accepted a high school teaching position without finishing the Applied Mathematician training as well.

After a year of teaching in a high school, Fidrich completed her internship and became the first graduate of the training (See Appendix B for Fidrich’s short biography). Leindler also left his high school job and became a doctoral candidate, and later, a faculty member at the Mathematics Department at the University of Szeged; however, he never completed his applied mathematician training. Jónás stayed at his high school teaching job and was required by the high school to complete his previously dropped high school physics teacher major through correspondence classes, as every other high school teacher was able to teach two subjects.

According to Kalmár, this uncertainty about internships, and its career implications, led to decreased interest in the new training. Indeed, while in 1957 they witnessed a surplus of applicants, they received too few applications to even fill the officially approved headcount in subsequent years.Footnote 7 However, students at the time were not aware of these issues (based on the author’s personal correspondence with Edit Sántáné-Tóth, a member of the second class starting in 1958), so it is unlikely that this impacted the number of applications.

The lack of internships was a problem only for the first class. Every student in the later classes had an internship scheduled for them, and from 1963 they were able to do their internships at computer centers at other research institutes or ministries as well. The requirements of the internship changed, too. Members of the second class had to spend only the second semester of their final, fifth year, as an internship. Members of the third class had to attend two additional, shorter internships during the training: a three week internship after their third year and a five week internship after their fourth year.

As this training was one of the very few options to learn programming in the country (see the section Other Early Programs), there was a shortage of programmers throughout the 1960s in Hungary. As a consequence, from the second class on, graduating students usually received multiple job offers from the industry, in many cases from the computer centers where they did their internships.

It has to be pointed out that although their degree qualified the graduating students to teach mathematics in high school, they rarely became teachers, as they were immediately acquired upon graduation by the industry. However, it was never even among the intentions of the training to educate high school teachers. At the time there were no computers at high schools in the country and no plan to include the subject in secondary education. The sole purpose was to train programmers. Indeed, Kalmár argued for the creation of the training to satisfy the (future) needs of the industry, computer centers and research groups. And the training was successful at that.

6 Programming Without Computers

The lack of computers in Szeged meant that, for several years, the students had no regular access to computers during their training. They visited the M-3 about once a semester before their internship in Budapest (based on the authors personal correspondence with Edit Sántáné-Tóth).

This situation led, by necessity, to the so-called “chalk programming” method where programs were written on the blackboard with chalk. Then Kalmár and the students “executed” the programs, an activity they referred to as a “dry run”. This method clearly had the didactic drawbacks that it deprived the students from the experience of running a program they wrote, the interactions with the program while debugging and running it again, and finally, the feeling of accomplishment once the program was properly functioning.

In his programming classes, Kalmár used several fictional computers instead of a description of one of the few computers in the country. Throughout the years, he defined more and more fictional computers based on the information they were able to gather about different models, and to accommodate new developments in the field. This led to a universal notational system, in which any actual operation of any actual computer can be expressed. The fictional computers, later referred to as “Kalmár’s fictional computers”, were introduced with or without index registers, while the operations in their assembly languages could have one, two or even three addresses.

It seems that Kalmár introduced his first fictional computers independently from the well-known idealized computers in the literature as his first versions predate the publication of some of those. It is clear, however, that he was interested in and indeed did follow the literature (see Appendix D) on them. However, he preferred to use a whole set of his fictional computers for the following reasons. In class, the students were required to solve different problems on different fictional computers, depending on the pedagogical purpose. For example, the set of operations could be rather restricted if the goal was to show that certain operations are expressible in terms of others. This made it impossible to exploit particular “nice” features of the formalism of the idealized computers in the literature. At the same time, it prepared the students to adapt easily to any kind of computer they ended up working with, which was important for two reasons. First, although there were only a few computers in the country at the time, there were many different models. This continued to be a challenge for the successive years as well. For example, by 1969, there were still only 86 computers in Hungary, but this small selection was comprised of thirty different models [52, p. 7]. Second, computers and programming languages were changing quickly at the time, so this method made it easy not only to adapt to the several different models, but to the computers of the foreseeable future as well (Fig. 3).

Fig. 3.
figure 3

Kalmár during a lecture [53].

During recitations, students were taught all computer models whose descriptions the instructors had access to. In these classes, the students first learned the operations of those specific computers in terms of the operations of Kalmár’s fictional computers, and then in their own assembly languages.

Kalmár’s fictional computers had a long-lasting impact on the education of programmers at Szeged. They were still in use in the 1970s, although by this time the focus had shifted to high-level languages. For example, Kalmár taught ALGOL 60 from the early 1960s. In [54], Kalmár mentions two reasons for this. First, they believed that every programmer should know how to code in assembly languages, and this method successfully achieved that. Second, it was also out of necessity. As Kalmár said, Hungary was “a computer museum” at the time; on their first job, students might end up working with a computer that was installed in the early 1960s.

A simulator of these fictional computers was even made in the early 1970s. It was written for the Minsk-22 computer that Kalmár’s department had at the time [55]. For a short survey of these fictional computers, see Appendix C. For Kalmár’s description of the educational use of his fictional machines, see Appendix D.

7 The Training Becomes a Major: The Later Years in Szeged

As mentioned above, Kalmár originally wanted to start a standalone programming and computer science major, similar to the Applied Mathematician major in Budapest, but his requests were denied. By 1960, when the training was established in Szeged, Kalmár continued petitioning the Ministry of Education and Culture to allow him to start a standalone programming and computer science major.

Based on the experiences of the first couple of years of the training, Kalmár argued for a programming and computer science major in the following way. First, he alluded to the trend of growing numbers of computers in the country, and the need for a skillful crew of 10–12 people to run each of them. Kalmár prognosticated that there would be a shortage of computer experts by the mid-1960s in Hungary, unless a new one-major program were started at Szeged with 10–15 students per year, in addition to continuing the ongoing training where students in their third year were allowed to drop their second major. Furthermore, he argued, the Applied Mathematician program in Budapest would have to offer such a major in the near future as well, while steps should be taken to start a similar major at the University of DebrecenFootnote 8 in order to satisfy all future needs.

Kalmár also drew attention to the difficulties the current system was generating. According to him, besides taking time away from their special subject, those who finished the programming and computer science training were only qualified to teach mathematics in high school. As a consequence, high schools were not particularly keen to hire them, were they to become teachers, as all other teachers had two majors. In many cases, if they ended up teaching in a high school, they were required to finish their second major through postgraduate correspondence courses.Footnote 9

Enrollment numbers in high school teacher majors were also low. Thus, Kalmár argued, computer experts should not be drawn away from among those people who were preparing already for at least two years to become high school teachers. On the other hand, a standalone major could be appealing to those students who were interested in engineering or natural sciences but not in becoming teachers.

Fig. 4.
figure 4

Tibor Varga and Ilona Bereczki at the M-3 computer in Szeged, 1967 [38].

The need for a growing number of computer experts and Kalmár’s perseverance finally paid off by the 1963–1964 academic year, when a standalone Mathematician major was finally started, with a possible Program DesignerFootnote 10 specialization. In the first two years, everyone in the major studied a core mathematical curriculum, while the courses of the specializationFootnote 11 began in the third year; students in this major did not have to study pedagogy and psychology anymore. The maximum enrollment in the Program Designer specialization grew from 13 in the beginning of the major in 1963 to 25 in 1969 and around 50 in 1970. This major was last offered during the 1981–1982 academic year.

Interestingly, at the beginning of the new major there was still no computer in Szeged! In 1964 the Cybernetics Research Group in Budapest received an Ural-2 computer, which rendered their old M-3 superfluous. They sold the M-3 to the University of Szeged for 1 Hungarian Forint, worth 2 scoops of ice cream at the time. The M-3 was running reliably again by mid-1965, becoming the first computer outside of the capital (Fig. 4). It was operational until 1968 when Kalmár’s department received a Minsk-22, which was in use until 1976.

8 Other Early Programs

Although the programming and computer science training that was started at Szeged in the fall of 1957 was the first university-level, degree-granting, multiple-years-long program, it was not an entirely isolated attempt in higher education. In this section, mostly based [13], I give a short rundown of the beginnings of programming education on the university-level in Hungary.

The earliest programming related courses were given by the Hungarian Central Statistical Office.Footnote 12 They offered punch card machine operator courses from 1953; by the end of the 1950s, they offered courses which included some information about digital computers and programming as well.

The first course on programming digital computers was, naturally, taught by the members of the Cybernetics Research Group during 1958 and 1959. The course was organized by the Treasury Department to train 10–20 programmers. The 37 lectures that constituted the course were devoted to the programming of the M-3 computer. This course was so popular that it had to be repeated 3–4 times shortly thereafter. Many of the 50 or so participants of these courses later became renowned computer experts in Hungary [13, pp. 38–39].

Members of the Cybernetics Research Group taught programming and computer science related courses at other places as well. One of the early uses of the M-3 computer was to provide calculations for the Planbureau as part of the economic planning. Béla Krekó, a young professor from the Karl Marx University of EconomicsFootnote 13 was hired part-time to help with such applications.Footnote 14 By the academic year of 1961–1962, Krekó was able to start a new, so-called Plan-Mathematician major at the University of Economics. This 5-year major trained about 15–20 students in modern, formal economics; the name of the major clearly appeals to the “economic planning” jargon of the time. The major included courses on linear and non-linear programming in economics (taught by Krekó), and electrodynamics, mathematical machines, and programming and computer science taught (regularly) by other members of the Cybernetics Research Group [56].

Surprisingly, engineers and mathematicians had access to regular programming and computer science training and majors only much later, as both Eötvös University and the Budapest University of Technology started their majors several years later, by the very end of the 1960s. Although both universities offered special elective courses or extracurricular activitiesFootnote 15 every now and then from the late 1950s, there was general resistance towards the new subject among their leaders.

An anecdote by Kovács illustrates this attitude rather well. In [59], he tells the story of how he ended up teaching programming and computer science courses in the Plan Mathematician major organized by Krekó. In 1960 Kovács visited several universities in Budapest and offered to teach the subject. First, he visited the University of Technology where the president’s response was that at this “serious university they only teach serious engineering knowledge”. The people running the Applied Mathematician major at Eötvös University responded rather similarly, claiming that “they only teach mathematics, and this is not mathematics”. When Kovács showed his syllabi to Krekó, he immediately asked Kovács to join him in starting the Plan Mathematician major. However, they still had to get approval from the leadership of the university. The reaction of the vice president of the University of Economics was more welcoming: “We teach so many silly subjects, an extra one will not make much difference”. Thus, programming and computer science became part of the Plan Mathematician major’s curriculum.

In the case of the Budapest University of Technology, there were further reasons for this delay beyond general resistance. One reason was the large size of classes in the engineering majors. For example, it would have been impossible to start general computer science education for hundreds of electrical engineers, when the count of digital computers in the country was still in the single digits. Another reason was the Technical University’s own internal regulations, in that every major had to have a complete curriculum for its entirety at its beginning. Thus, nothing other than special elective courses was allowed to be inserted into the curriculum of a student once they were enrolled.

For the sake of completeness, we have to mention a unified computer science education initiative from the early 1970s. As part of the initiative Eötvös University, the University of Szeged and the University of Debrecen cooperated in developing a common curriculum based on other contemporary international curricula. This resulted in the design of a 3-year Programming Mathematician major, providing a “college” or “bachelor” equivalent degree. This new major was offered at all three universities from the 1972–1973 academic year.

Kalmár, of course, was involved with the development of this unified initiative. In the beginning he was against the structure of the proposed new majors for various reasons. But once these new majors were approved he fell in line. In addition, the nationwide initiative also instigated the founding of several new computer science departments around the country. Kalmár traveled around those universities that planned to start a new department to share his experience and their curricula in order to provide guidance.Footnote 16

Students enrolled in this program at Szeged could not switch between this major and the other, 5-year major designed by Kalmár. The new major was designed to quickly fulfill the industry’s demand for competent programmers, while the 5-year major was to train researchers and leaders of computer centers.

The most talented students in this new Programming Mathematician major could then go on to a 2-year extension, providing a “university” or “master’s” equivalent degree at the end. This degree was offered by Eötvös University from 1975–1976, at Szeged from 1979–1980 and at Debrecen from 1988–1989 [13, Sect. 8]. [7, pp. 45–47]. The program was called Program Designer Mathematician, exactly the same as the original 5-year major at Szeged. Thus, the two Program Designer Mathematician majors were simultaneously offered at Szeged for 2 years.

9 Kalmár’s Writings on Education and Computers

Kalmár was engaged with computer science education until his death. This section summarizes the main points in his writings on the education of computer science.

In his [61] and [54] Kalmár shares the experience of computer science education in Szeged. The [61] describes the history of the program, its development from training into a major, and the challenges for the time. In [54] Kalmár provides a high-level description of his fictional machines (see Appendix C for their description) and argues for their continued use. He mentions that high level languages of the time are not always efficient enough. He also describes Hungary as a “computer museum”, where several old machines, installed in the early 1960s, were still running. Thus, programmers have to be able to code in assembly languages as well. Most importantly however, he argues that using his fictional machines in education helps programmers develop intuitions independent of machines (and programming languages). See the section Programming Without Computers, as well as an unpublished abstract of Kalmár’s in Appendix D, for a description of how it was achieved.

Kalmár voiced his opinion on computer science education on other levels than at the university. In the previous section it was already mentioned that Kalmár was involved with the unified computer science education initiative in the early 1970s. Folder ‘Lev-12’ contains a 24-page long letter from 10 April 1971 detailing his comments and recommendations for the initiative. The letter was sent to György Aczél, the secretary for cultural affairs of the Central Committee of the Hungarian Socialist Workers’ Party, upon Aczél’s request. In this letter Kalmár gives detailed recommendations for computer science education from elementary school, through high school to university, and even to postgraduate courses and trainings.

Kalmár’s vision of computer science education went beyond mere computer science courses and training of programmers. Both in this letter as well as in [62] he emphasizes that everyone needs some understanding of computers in what he called the “age of computers”. According to Kalmár, everyone should be able to judge what problems in their own field of expertise could be solved efficiently by computers. Furthermore, they should have the knowledge to describe those problems with such precision that mathematicians and programmers could use that description as a starting point for their computerized solution. In order to cultivate such knowledge even for non-programmers, Kalmár not only suggested inclusion of an introductory computer science class in high school curricula, but also argued that students should be shown the possible uses of computers in every subject, not only in mathematics and computer science.

Another issue that came up in [62] is computer-aided education. There, Kalmár argues for the use of computers in instruction and education, but emphasized that computers should never replace educators, only help them to provide a more personalized education. Kalmár mentions the work of Hunya Péterné Ambrus MargitFootnote 17 on the use of computers in multiple choice testing and examination. Hunya Péterné began this work, one of the few computer and machine aided education projects in Hungary,Footnote 18 in the second half of the 1960s at the Cybernetics Laboratory led by Kalmár. Although this kind of research fit well with the cybernetic trend in the Eastern Bloc, Kalmár’s interest in this field was most likely influenced by Patrick Suppes as well. Indeed, between 1963 and 1965, both Kalmár and Suppes served in the governance of the DLMPS,Footnote 19 Kalmár as Vice-President and Suppes as Secretary General, and as members of the Committee on the Teaching of Logic and Philosophy of Science from 1964 until 1968 as well.Footnote 20 Their correspondence, found in the Kalmár Nachlass, indicates that Suppes informed Kalmár about his research on computer assisted research, especially on teaching elementary school students logic and arithmetic.

10 Conclusion

The programming and computer science training at Szeged, the first degree-granting, multiple-years-long program at the university-level in Hungary, was started due to Kalmár’s one-man mission. However, as there were very few computers in the country at the time, the training faced serious difficulties. Students had to learn programming without access to actual computers and, in the beginning, some of them were unable to finish their training due to lack of internships. After the initial complications, the training became a major and Szeged grew into one of the main hubs of computer science education in Hungary. Simultaneously, it created a community of students, educators and scholars, many of whom became renowned members of the computer science community in Hungary.

Beyond providing a detailed description of a particular program in computer science education that started in the late 1950s, hopefully this case study will be a useful source for more overarching studies in the history of the field. First of all, the challenges the program at Szeged faced were quite typical for the Eastern Bloc: the shortage of computers in the country or region, and a state that, while it had strong control over higher education, failed to recognize the quickly growing need for experts in the field and acted only belatedly. Although Kalmár at Szeged might have faced extreme circumstances even for the Eastern Bloc by running a programming training without a computer for eight years, it would be interesting to see how other countries in the region responded to their similar challenges. It would also be worthwhile to compare the timeliness of the different Eastern Bloc countries’ reactions to the increasing need for programmers.

Once a wider perspective is gained on the history of computer science education in the Eastern Bloc, several cross-country comparisons between the East and the West could be made. It was already mentioned that, in several countries in the Eastern Bloc, states were late in recognizing and trying to fulfill the need for programmers. For example, the first serious, centralized initiative in computer science education came as late as the early 1970s in Hungary. In stark contrast, the government provision of computers to universities began in the mid-1950s in the UK [8, 9]. Another factor to consider is the impact of the level of interconnectedness of research and higher education on the education of computer science. Mounier-Kuhn [10] explains the success and long-lasting impact of certain computer science departments in France by the conjunction of a computer center, computer science education and conducting research at the department (as opposed to not conducting research on sight). This explanation quite plausibly fits several further countries in Western Europe. However, in the Soviet Union “basic research was largely the confines of the Russian Academy of Sciences, forming the elite research institutions devoid of teaching responsibilities. Most universities were focused almost exclusively on teaching and had no authority to conduct research” [64, p. 174]. Hungary adopted a mixed system, where there were several independent research institutes, but departments were allowed (and sometimes required) to conduct research. In addition, there were even research groups that belonged to the Hungarian Academy of Sciences while being located at departments at universities, such as the aforementioned Mathematical Logic and its Applications Research Group led by Kalmár at the University of Szeged. It would be important to understand how different academic systems impact the development of new disciplines at universities, especially if they are strongly resource-dependent.