# Computer Science Education at Helsinki University of Technology: The First Ten Years (1968–1978)

Hans Andersin, Reijo Sulonen, Markku Syrjänen

► To cite this version:

Hans Andersin, Reijo Sulonen, Markku Syrjänen. Computer Science Education at Helsinki University of Technology: The First Ten Years (1968–1978). 3rd History of Nordic Computing (HiNC), Oct 2010, Stockholm, Sweden. pp.390-398, 10.1007/978-3-642-23315-9_44. hal-01564629

HAL Id: hal-01564629

https://inria.hal.science/hal-01564629

Submitted on 19 Jul 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>
# Computer Science Education at Helsinki University of Technology: The First Ten Years (1968–1978)

Hans Andersin, Reijo Sulonen, and Markku Syrjänen

Aalto University School of Science and Technology
Department of Computer Science and Engineering
P.O. Box 15400, FI-00076 Aalto, Finland
{hans.andersin, reijo.sulonen, markku.syrjanen}@tkk.fi

**Abstract.** When Helsinki University of Technology (HUT), after a period of basic programming courses, set out to offer their students a full curriculum of computer science courses, they did it in their own way. Instead of the usual mathematically oriented university curriculum, most of the courses were slanted towards the practical needs of the surrounding industry. In addition to this, they kept an eye on what was new and coming throughout the world in the field of computer science. The paper focuses on the development during the first ten years, 1968–1978. Course headings and people involved in teaching are mentioned. The research activity is described briefly.

**Keywords:** Computer science curriculum, industry relations, research activities, student activities

## 1 The Very Beginning

In meeting the growing demand for university-level education in computer science, Helsinki University of Technology (HUT) offered some courses in programming (within applied mathematics) and systems analysis (within industrial engineering) from as early as the mid-1960s. Computer technology and the technical applications of computers had already been present in practical research and development projects at various institutions of HUT since the 1950s. The market wanted more and in response to this HUT founded the chair of computer science or, as we called it, “information processing science.”<fnref n="1" /> Hans Andersin, having recently presented his PhD dissertation (computer simulation of organizations), was nominated to become the first holder of the chair. He was given the “abundant” resources of two assistants, a secretary, and some office space.

The ACM Computer Science Curriculum [1] that was first published in the late 1960s was heavily slanted towards the theoretical fundamentals of computing and so were the first computer science professors worldwide. HUT was a notable exception.

<footnote n="1">¹ From the early 1970s, Prof. Leo Ojala, at the Department of Electrical Engineering, started a line of activities in the area of digital systems. This gradually grew to a substantial effort in what can be called theoretical computer science. The history of this branch is not considered in this paper.</footnote>
Andersin's background was partly technological, having been involved in building a computer in the 1950s, and partly in computer applications and operations from his previous employers, IBM and the State Computer Centre. Critics from industry blamed HUT for teaching students programming languages such as Algol, while industry used Cobol and Fortran. The close ties with industry guided the new team at HUT more than the ACM Computer Science Curriculum did.

## 2 Setting the Goals

The first steps taken by the new team were to formulate its version of the computer science curriculum and a strategy to implement it. In retrospect, we were guided by the following principles:

1. Every student at HUT should at least know programming (the "computer literacy principle");

2. HUT should be able to offer a wide variety of computer-related courses from the newest trends in computing to the practical needs of Finnish industry (the "smorgasbord principle");

3. Close contacts should be maintained with Finnish industry (the "serving principle");

4. From the beginning there should be an international flavor to every aspect of our computer science activity (the "internationality principle");

5. One or a few niches have to be found and defined for the research focus for the new institution of computer science at HUT (the "niche principle");

6. Being young and creative, students should become involved in sharing responsibilities. This was more a necessity than a cognitive action dictated by the limited resources (the "participation principle").

These principles guided us through the first ten years, 1968–1978. In this paper, we will deal mainly with questions relating to points 1, 2, 4, and 6. The other points will be covered more thoroughly in future papers. Contacts with industry were maintained by arranging a yearly conference, OtaDATA, during which the students and invited speakers presented an update on the latest developments in the field, inside and outside HUT, to a paying audience. The OtaDATA association of teachers and students arranged the OtaDATA conference. OtaDATA contributed to covering a part of the expenses of running the computer science activity. Most of the master's theses were directly done for and paid for by industry and were thus industrially oriented. Even though the creation of the information processing curriculum and the huge number of students it attracted dominated all the activities during the first years, serious efforts were dedicated towards starting research in areas reflecting the capabilities and orientation of the initial team. The initial research focus was on computer graphics and interactive systems and especially on the use of computer technology in the graphical industry [3]. Another mainstream in early research was simulation, which led to a textbook used at several Scandinavian universities [4]. Teaching programming techniques led naturally to the research areas now known as software engineering. Our close connections with Finnish industry created the tradition of searching for research problems in unexplored and innovative computer
applications outside academia. All these initial steps have remained as underlying themes and principles characterising the research activities. Our first PhD thesis, presented in 1975, dealt with high-level concepts for a computer graphics programming language [5]. The first PhD thesis on programming methodology was presented in 1975 [6]. What was started during those early years has a strong following at Aalto University today. The early research activity of the laboratory of information processing science at HUT will be presented in more detail at a later stage.

## 3 The First Curriculum

From the academic years 1969–1970, a well-defined curriculum was open to all students [2]. One could say that the “smorgasbord principle” was applied to its full extent. The curriculum contained four course groups:

*   *Computer Science I (Programming)*. In 1969, this group of courses was still provided by the Applied Mathematics department and it was based on the Algol language and the Elliot 803 computer of the computing centre of the university. From 1970 onwards, our institution (the Computer Science Laboratory) took over these basic courses. The new courses included computer architecture, computer and programming language modules (Basic, GPSS, Simula, Fortran, LISP, APL, Snobol, Analitic, and Cobol), data and file structures, time-sharing systems, the structure and use of the PDP-15, computing systems from the point of view of the user, computing systems (hardware), theory of formal grammars and automatically constructed recognisers, the FAS programming language and its compiler for administrative systems, the Macro 15 language, the PDP-15 foreground/background monitor, data transmission and communication, the UNIVAC assembler, compilers, and operating systems.

*   *Computer Science II (Information Systems Design)*. This course consisted of several modules such as theoretical analysis of information systems, systems design methods, project work, and special features of the design of real-time systems, GPSS, Simula, and other programming tools in systems design.

*   *Computer Science III (Computer Applications)*. The topics of this course varied from year to year. Examples include administrative data processing systems, management information systems, Cobol programming, technical-scientific and mathematical-statistical applications, applications in construction engineering and in the construction industry, applications in community planning, applications in production planning and management and in industrial production in general, management applications, marketing applications, and real-time applications.

*   *Computer Science IV (Seminars)*. The topics of the seminars varied widely during the years. Topic examples include integer programming, processing of symbols, graphs (theory, algorithms, applications), information retrieval,
computer graphics, real-time systems, computer technology, linear
programming, artificial intelligence, MIS, logical-linguistic foundations of
computing, production planning, modeling and computer simulation,
management of information systems design, Nordic projects, operations
analysis and models, minicomputers, community planning and registers,
computer applications in hospitals, how to choose a computer, text processing,
the computer as a tool for a product designer, compilers, information systems
from an economic point of view, special problems in using large-scale
computing systems, translation of natural languages, socio-economic models,
measuring the performance of computing systems, project management,
software engineering, sorting and search, proving the correctness of programs,
distributed data processing systems, and computers and society.

4 The Role of Seminars

The seminars were very popular among both students and outsiders. They were often conducted by visiting professors, researchers from other Finnish and foreign institutions, senior students, laboratory engineers, and representatives of industry. Each seminar was obliged to produce a publication covering the topic selected. Many of these publications were sold to industry by the student association OtaDATA. The list of names of the seminar coordinator-lecturers reveals that many persons who have had an outstanding influence in industry or academia started their career here, e.g. at least eight future university professors started from here. The leftist political movements of the 1970s motivated the almost-yearly seminar on Computers and Society. This seminar was criticized by some people (students and staff) who did not like the idea of separating "good Soviet data processing from bad Western data processing."

5 Computer Science for the Masses versus Specialization

An important change happened in 1971: the basic programming course was separated
from the rest of the curriculum and a new course on computing technology was
created. It tried to answer the question "what every engineer should know about
computers and computing." The topics covered included principles of computing,
computer hardware (on a very general level), introduction to information systems
design, and an overview of applications. In this way, we adhered to the "computer
literacy principle." Both these introductory courses were open to, or even compulsory
for, all students of HUT. The curriculum, consisting of Computer Science I-IV, was
now devoted to students specializing in computer science after having already passed
the first two introductory courses. The more advanced courses contained in computer
science had turned out to be very crowded, partly with less devoted students. So, the
purpose of the new basic courses was to satisfy the crowds and give us time to
concentrate on our own students.
# 6 The New Credit Unit System

From the academic year 1972–1973 on, all the studies at HUT were reorganised in the form of a credit unit system. A credit unit was defined as one week (i.e. 40 hours) of work. One academic year added up to 40 such credit units and the requirement for the M.Sc. degree was 160 credit units of studies plus writing a M.Sc. thesis, “worth” 20 credit units. The studies of the first two academic years were the same for all students from the same department; for the last two academic years a student was supposed to select a major subject (40 credit units) from a list specified by the department where he/she was studying, and a minor subject (15 credit units, in principle, any subject taught at HUT). The remaining 25 credit units were freely selectable.

The contents of the computer science major and minor varied during the ten years covered by this paper. Table 1 provides a snapshot from the end of the era.

<table><caption>**Table 1.** Content of CS major and minor towards the end of the 1968–1978 period.</caption><tr><td><strong>Prerequisites:</strong><br>Introduction to Programming<br>Computing Technology</td><td><strong>Major subject:</strong><br><br><strong>Core courses</strong><br>Programming Techniques<br>Individual Computer Science<br>Project<br>Information Systems<br>Programming Project<br>Data Structures and File Systems<br>Computer Systems</td></tr><tr><td><strong>Minor subject:</strong><br><br><strong>Compulsory courses:</strong><br>Programming Techniques<br>Computer Science Project</td><td><strong>Optional courses:</strong><br>Two courses from the following list below must be taken<br>Computer Systems<br>Information Systems<br>Data Structures and File Systems</td></tr><tr><td></td><td><strong>Other courses of the major</strong><br>12 different courses (including seminars)<br>Programming languages (Fortran, Algol, Cobol, Assembler, Simula)</td></tr></table>

The computer science major was open to students from the departments of technical physics, electrical engineering, and mechanical engineering. In practice, this meant that students graduating with a major in computer science were quite evenly distributed among these three departments. Students taking the minor subject came from all over the university.

# 7 The Importance of Individual and Team Projects

An early requirement for computer science students was to carry out an individual (sometimes team) project involving the solution of a real-life problem. This praxis
taught the student many practical and theoretical facets of computing better than any
lecture could do. The project is still one of the most important parts of the
educational process of computer science at HUT today. In addition to this, the M.Sc.
thesis was built around a thorough problem-solving exercise carried out (and paid
for) by an enterprise.

8 Curriculum and Course Planning

From its tiny beginnings in 1968, the curriculum and the number of persons involved
in implementing it grew tremendously towards the end of the period 1968-1978. The
number of students and M.Sc. theses also increased steadily. The number of PhD's
was still relatively small compared to the situation today. The funds that were
available were still very limited. To alleviate the problem young people became
inspired and motivated by new and trendy things, with lots of voluntary work
contributions. Some extra money was earned from industry with the sales of
OtaDATA seminar publications and OtaDATA conference proceedings. These
resources were used for arranging planning meetings at various course centers in
Finland and abroad (including the Canary Isles!). Combining pleasure with work
was, and still is, a good way of rewarding personnel; it formed a tightly knit working
team.

9 International Connections

The "internationality principle" mentioned above implied the necessity of
international contacts for the newly founded CS laboratory. Fulbright scholarships
and other systems for financing visiting scholars from the U.S. to Finland and vice
versa were utilized fully. Four professors from U.S. universities visited us for shorter
or longer periods and made great contributions, both in teaching and in research
activities. These professors were James Moore, Harold Highland, Robert Hacker, and
Thomas H. Brown. All the computer science professors of HUT spent sabbatical
years at leading U.S. universities (Andersin at Brown, Sulonen at Brown and
Stanford, and Syrjänen at Stanford). The bilateral cooperation between Finland and
the Soviet Union in the field of cybernetics also led to exchanges of researchers, both
with Moscow (Igor Pedanov) and Tallinn (Ants Work, Leo Vyhandu). Besides the
international relations, we profited from having visitors from neighboring
universities in Finland (e.g. Reino Kurki-Suonio, Pentti Kerola, and Martti Tienari)
and Sweden (Janis Bubenko, Jr.).

10 Computer Resources

In 1968, when the new CS laboratory was established, there were exactly two
computers at the whole university. The computing centre had an Elliot 803 to run
mainly Algol programs; the first programming course (Introduction to Programming)
was based on the Algol language. This computer was operated on the principle of a
"closed computer room": a program was given in on a coding sheet and the results
were delivered later, usually the next day.

In addition, there was an IBM 1620, which curiously enough, had been bought
as "additional equipment" for the Elliot computer. While the Computing Centre was
located in the main building of the university, this "additional equipment" resided in
the Department of Electrical Engineering. It could be programmed in the Fortran III
language and used freely. The computer itself was strictly hidden, but it could be
used through a "terminal" consisting of a combination of a card reader and a line
printer located in an open lobby. For one of the authors of this paper this was the first
computer he could use independently, which was a fascinating experience.

In 1970, two important steps forward were taken. A time-sharing computer of
the HP 2000 type was installed in the computing centre, with several teletype
terminals situated all over the campus, with one also in our laboratory. This computer
interpreted programs written in the Basic language, and thereafter the Introduction to
Programming course was based on Basic instead of Algol.

In addition, the Bank of Finland bought a "great computer" of the Univac 1108
II type, to be shared by all Finnish universities. Physically this computer was located
in the State Computing Centre, which was only one kilometre from our university.
All the universities were connected to this computer by "fast" telecommunication
lines. A "terminal" to that computer, once again consisting of a combination of a card
reader and a line printer, was located in our laboratory.

The Univac, in addition to its "huge" computing power, supported several
"new" programming languages, including Fortran IV, Cobol, and Simula 67, with
implications for our curriculum. Earlier, teaching programming languages beyond
Algol or Fortran III had required special arrangements with partners outside the
university.

Also in 1970, a PDP-15 computer including a graphic processor was installed in
our laboratory for the computer graphics project. This computer was devoted to
research purposes, but during the years, some courses about its operating system and
its macro-assembler language were given, mainly in order to educate potential new
members of the research staff.

The situation remained essentially the same for several years, until in 1977, we
received a PDP-11/34 computer and in 1978, the computing centre gained a
"medium-sized" DEC-20 computer. In 1978, the PDP-11 became the first computer
in Finland to run the UNIX operating system (enabling exotic features like email to
be used) and DEC-20 was the first computer at our university to run Prolog
programs, but these developments are outside the scope of this paper.

11 Conclusion

The authors of this paper were surprised and overwhelmed by the great interest that the students at HUT showed in computer science courses and other activities right from the start. The largest lecture halls of HUT were filled to the last seat and some of our colleagues were complaining that the CS laboratory absorbed too many of
their students and resources. The first ten years of computer science at HUT were characterized by a new social phenomenon: students from all different departments convened around a common interest – computer science. The most important features characterizing the first ten years of computer science at HUT were the wide variety of courses offered, the high level of activity of the students, and the research niches selected.

The current situation in computer science at HUT is, of course, very different from what it was during its first ten years. Nevertheless, labels currently associated with a good part of the current computer science department such as active, popular, good international relations, successful research projects, and good relations with the surrounding industry lie deeply rooted in the principles, strategies, and objectives formulated more than forty years ago and which guided the developments during the first ten-year period.

## References

1. ACM Curriculum Committee on Computer Science, 1968. "Curriculum 68: Recommendations for the Undergraduate Program in Computer Science" *Communications of the ACM*, vol. 11, no. 3, pp. 151–197 (March 1968)

2. The OtaDATA biyearly information newsletters 1969–1978

3. Enlund, N., Andersin, H.E.: The Early Days of Computer-Aided Newspaper Production Systems. In: History of Nordic Computing 2, IFIP AICT 303, pp. 238–249 (2009)

4. Andersin, H., Sulonen, R.: Simuleringsteknik. Studentlitteratur (1972)

5. Sulonen, R.: High-Level Concepts for a Graphical Programming Language, PhD Thesis, Espoo (1975)

6. Syrjänen, M.: On Construction of Correct Programs as a Two-level Process, PhD Thesis, Espoo (1975)
Appendix

Names of People Involved in Computer Science Teaching
at HUT during the First Ten Years [2]

Aho Pekka

Alander Jarmo

Andersin Hans

Andersson Patrick

Arppe Heikki

Björk Bo-Christer

Blomqvist Berndt

Brantberg Robert

Brown Thomas H.

Bubenko Janis

Bäckström Bertel

Eloranta Eero

Enlund Nils

Granskog Christer

Hacker Robert

Hakonen Erkki

Hallavo Erkki

Hallivuori Matti

Hannus Seppo

Heino Juhani

Helme Jukka

Highland Harold

Hoikkala Pekka

Husberg Nisse

Hytönen Veikko

Jauhiainen Osmo

Kallioja Tapio

Kamppari Olli

Kanerva Antti

Kangas Kauko

Keijola Matti

Kerola Pentti

Kervinen Esko

Keränen Heikki

Kiiras Juhani

Kilpi Matti

Klimscheffskij Roni

Knuuttila Raili

Koivisto Kari

Korhonen Martti

Koskela Lauri

Koski Timo H.A.

Kotovirta Tuomas

Kukkasjärvi Aimo

Kukko Arvo

Kuronen Aune

Kurki-Suonio Reino

Kuronen Timo

Laaksonen Kimmo

Laukkio Tuuli

Leino Tapio

Lifländer Veli-Pekka

Linnakko Ilkka

Lokki Olli

Loponen Hannu

Louhenkilpi Timo

Lukumaa Juhani

Lundström Lars

Makkonen-Eloranta Kirsi

Martonen Esa

Moore James

Mykkänen Jussi

Mäkelin Matti

Mäkinen Alpo

Nevalainen Risto

Nyhola Bo

Nyström Gunnar

Oberly Mark

Oesch Klaus

Oksala Tarkko

Olkkonen Tauno

Orelma Arto

Parkkinen Matti

Pedanov Igor

Pekkanen Kauko

Pennanen Juha

Perttula Matti

Perttula Pekka

Peussa Markku

Pietarinen Ilmari

Pihlajatie Jorma

Puhakka Matti

Pulkkis Göran

Rehnström Peter

Reimavuo Jyrki

Ristimäki Heikki

Roman Ilkka

Roos Kurt-Erik

Ruikka Seppo

Runeberg Bernhard

Ruohoniemi Aimo

Saikkonen Heikki

Seppänen Edvin

Seppänen Jouko

Sihto Matti

Silvennoinen Juha

Siro Kristel

Sulonen Reijo

Suvanto Hannu

Syrjänen Markku

Sääksjärvi Markku

Takala Tapio

Talpila Antti

Tamminen Hannu

Tienari Martti

Tiihonen Timo

Tuukkanen Annikka

Törnudd Elin

Uusitalo Matti

Uusitupa Seppo

Valli Tapio

Varvikko Kari

West Häkan

Vepsäläinen Ari

Vesterinen Kaarina

Work Ants

Vyhandu Leo

Vähäkylä Pekka

Yrjölä