Teaching

This page contains details on all the courses I have taught in postgraduate and graduate level. My current teaching activities (at the University of Peloponnese) are presented in other pages.

Postgraduate Courses

Graphics and Visualization (1 semester, 2009 – 2010)
Department of Computer Science and Technology (Postgraduate Programme), University of Peloponnese

Taught in collaboration with Dr Amalia Foka.

Topics of the Graphics part: Overview of basic Graphics topics — Lighting models and algorithms — Ray tracing — Shadow generation — Animation techniques — Surface simplification.

Topics of the Visualization part: Principles of Visualization — Scalar data visualization: isosurfaces, Marching Cubes, direct volume visualization (ray casting, splatting) — Vector data visualization: hedgehog plots, particle advection techniques (streamlines, pathlines, streaklines).

Graphics, Visualization, Fractals (2 semesters, 2004 – 2006)

Organisation and teaching of the “Graphics” and “Visualization” parts of this course (the “Fractals” part was tought by Dr V. Drakopoulos).

Topics of the Graphics part: Lighting models and algorithms — Ray tracing — Shadow generation — Animation techniques — Surface simplification.

Topics of the Visualization part: Principles of Visualization — Scalar data visualization: isosurfaces, Marching Cubes, direct volume visualization (ray casting, splatting) — Vector data visualization: hedgehog plots, particle advection techniques (streamlines, pathlines, streaklines).

Graduate Courses

Object-Oriented Programming (3 semesters, 2007 – 2010)
Department of Computer Science and Technology (3rd semester), University of Peloponnese

Introduction to object-oriented programming — Classes, instances, objects — Encapsulation, data hiding, behaviour hiding — “kind-of” and “part-of” relations — Polymorphism, overriding, overloading — Homogeneous and heterogeneous collections — Introduction to the Java programming language — Basic types and control structures — Objects and classes — Arrays — Advanced features of Java: inner classes — Threads — Networking — Streams and files.

Computer Graphics (4 semesters, 2005 – 2010)
Department of Computer Science and Technology (4th / 7th semester), University of Peloponnese

Basic notions — Rasterization of basic shapes — Clipping algorithms — Transformation matrices in two and three dimensions — Projections — Parametric curves (Bézier curves) — Z-buffer algorithm — Local lighting models and algorithms — Basic texture mapping — OpenGL lab.

Advanced Programming Topics (1 semester, 2009 – 2010)
Department of Computer Science and Technology (4th semester), University of Peloponnese

C++ — Code optimization — Profiling — Object-oriented design — Event driven programming — GUI applications.

Data and Information Visualization (2 semesters, 2006 – 2008)
Department of Computer Science and Technology (6th semester), University of Peloponnese

Introduction to Visualization — Similarities and differences between data and information visualization — Principles of Visualization — Multidimensional data visualization — 3D Computer Graphics techniques for data visualization — Techniques based on focus, projection, warp — Trees, hierarchies, graphs — Evaluation of visualization methods.

Programming Principles (1 semester, 2007 – 2008)
Department of Computer Science and Technology (2nd semester), University of Peloponnese

Advanced programming in C — Multidimensional arrays — Advanced string manipulation — Pointers, arrays as pointers — Structures, pointers to structures — Files — Dynamic memory management, simple data structures — Searching and sorting algorithms — Pointers to functions — Event-driven programming — Advanced use of the preprocessor.

Multimedia Technology (2 semesters, 2006 – 2008)
Department of Computer Science and Technology (7th semester), University of Peloponnese

General characteristics of multimedia — Principles of data compression — Digital image: principles, file formats, the JPEG algorithm — Digital sound: principles, file formats, MP3 compression, MIDI — Digital video: principles, file formats, MPEG compression — Animation techniques — Optical storage media (CD, DVD) — Multimedia applications on the Internet, Streaming technologies — Development methodologies for multimedia applications.

Multimedia and Virtual Reality (1 semester, 2005 – 2006)
Department of Computer Science and Technology (6th semester), University of Peloponnese

Teaching of the “Multimedia” part of this course (the “Virtual Reality” part was taught by Assistant Professor G. Lepouras).

The content of this module is similar to the one of the newer course “Multimedia Technology” in abridged form.

Introduction to Computer Science and Technology (1 semester, 2005 – 2006)
Department of Computer Science and Technology (1st semester), University of Peloponnese

Introductory course aiming to present to the students several aspects of Computer Science.

Computer architecture (software, hardware) — Number systems — Digital data representation (text, image, sound) — Basic compression techniques — Error detection and correction — Machine language — Principles of operating systems — Basic algorithmic structures — Algorithm design — Data structures — Computational complexity — Program translation — Fundamentals of computer networks — Fundamentals of database systems — HTML lab.

Information Technology Management (1 acad. year, 2005 – 2006)
Faculty of Higher Education for Police Officers (4th year)

Computer security — Data encryption — Internet applications — Statistical processing of data — Practice in the use of Word, Excel and Internet applications.

Programming Techniques (2 acad. semesters, 2000 – 2001)
School of Programmers of the Greek Army

Organisation and teaching of this introductory programming course for officers of the Greek Army; preparation of complete course notes (see publication [B2]).

Supervision of Theses

Postgraduate Theses

  1. A. Agathos, Surface Reconstruction and Simplification. Computer Graphics Lab, Department of Informatics and Telecommunications, University of Athens (in collaboration with Assoc. Professor T. Theoharis) (2001).

Graduate Theses

  1. A. Danelakis, E. Saiti, Multiresolution Visualization of Vector Fields over Tetrahedral Meshes. Computer Graphics Lab, Department of Informatics and Telecommunications, University of Athens (2006).
  2. A. Vlachou, A. Dellis, Visualization of 4D Fractal Sets Using Multiresolution Techniques. Computer Graphics Lab, Department of Informatics and Telecommunications, University of Athens (in collaboration with Assoc. Professor T. Theoharis and Dr V. Drakopoulos) (2002).

Teaching Assistance

Computer Graphics Ι (5 semesters, 1997 – 2002)
Department of Informatics and Telecommunications (5th semester), University of Athens

Tutorial exercises (transformations, projections, clipping, Bézier curves) — OpenGL lab (introduction to the OpenGL model and GLUT, basic shapes, projections, transformations, hierarchical transformations for animated scenes, back-face culling, Z-buffer) — Coursework assignment and marking — Contribution to examination preparation and marking.

Introduction to Programming (1 semester, 1998 – 1999)
Department of Informatics and Telecommunications (1st semester), University of Athens

Tutorial exercises on the Pascal language — Coursework assignment and marking — Contribution to examination preparation and marking.

Computer Science Ι (1 semester, 1997 – 1998)
Department of Mathematics (1st semester), University of Athens

Preparation of full set of slides for teaching the Pascal language — Tutorial exercises — Coursework assignment and marking.

Computer Lab (1 acad. year, 1994 – 1995)
Department of Mathematics, University of Athens

Setup and administration of the lab computers — Teaching of introductory courses on MS-DOS, Windows and Word to first-year students — Coursework marking for modules offered by the Department of Mathematics (Computer Science I / II, Data Structures, Numerical Analysis).

Secondary Education Teaching

Computer Science (Standard Level / High Level) (1 acad. year, 2006 – 2007)

The International Baccalaureate Diploma Programme is a two-year programme for entrance to international universities. It is designed and supervised by the International Baccalaureate Organization and offered in over 1500 schools worldwide.

The Computer Science course is offered in two levels (Standard and High Level). The Standard Level course covers basic elements of Computer Science (Computer Architecture — Number systems — Digital data representation — Operating Systems — Computer Networks — Compilers — Software Engineering) and programming in Java. The High Level course additionally includes further details on all the above subjects, covers further areas of Computer Science (File and Database Organization — Computational Complexity) and of programming (Object Oriented programming — Data Structures). Within the course, students develop a complete Java application and fully document the development process.