Teaching

This page contains details on all the courses I have taught in postgraduate and graduate level.

Postgraduate Courses

Data Communication and Visualization (2 semesters, 2016 – 2017)
MSc in Data Science, Athens University of Economics and Business

Visual perception — Basic principles for creating good visualizations — Visualization types depending on the data type and dimension — Interactive visualizations — Communicating data through visualizations — Practice using Tableau and R.

Taught in collaboration with Professor D. Karlis.

Field Prospection and Computing Technologies for Cultural Heritage (2 semesters, 2015 – 2017)

Co-ordinator of this course (all courses in this MSc programme are taught by several lecturers, each presenting topics of his/her specialization in a number of lectures).

Contents of my lectures: Principles of Visualization — Data Visualization techniques and tools, with applications for the environment and Cultural Heritage — Information Visualization techniques and tools, with applications for Cultural Heritage — Reconstruction of archaeological objects and sites.

Topics in Information Visualization (4 semesters, 2010 – 2017)
Department of Informatics and Telecommunications (MSC in Computer Science and Technology), University of the Peloponnese

Review of selected topics in Information Visualization — Study and presentation of research papers within these topics.

Research Topics in Computer Graphics (2 semesters, 2012 – 2014)
Department of Informatics and Telecommunications (MSC in Computer Science and Technology), University of the Peloponnese

Review of selected topics in Computer Graphics — Study and presentation of research papers within these topics.

Programming Techniques (1 semester, 2010 – 2011)
Department of Computer Science and Technology (Postgraduate Programme), University of the Peloponnese

Overview of basic programming structures — Introduction to object-oriented programming with C++ — Classes, objects — Inheritance — Polymorphism, overriding — The C++ Standard Library — Event-driven programming — The Qt library.

Taught in collaboration with Assistant Prof. G. Lepouras.

Algorithm design and implementation (1 semester, 2010 – 2011)
Department of Computer Science and Technology (Postgraduate Programme), University of the Peloponnese

Graph algorithms — Divide-and-conquer algorithms — Greedy algorithms — Elements of computational complexity — Implementations in C++.

Taught in collaboration with Assistant Prof. Th. Malamatos.

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

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).

Taught in collaboration with Dr Amalia Foka.

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).

Undergraduate Courses

Object-Oriented Programming (9 semesters, 2007 – 2017)
Department of Informatics and Telecommunications (3rd semester), University of the Peloponnese

Introduction to object-oriented programming and Java — Classes, objects, fields, methods — Access specifiers: public/private/protected, package access — Inheritance, polymorphism, abstract methods and classes, interfaces — Generics, Java collections — File manipulation — Elements of the Java Class Library.

Advanced Programming Topics (7 semesters, 2009 – 2017)
Department of Informatics and Telecommunications (4th / 6th semester), University of the Peloponnese

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

Computer Graphics (10 semesters, 2005 – 2017)
Department of Informatics and Telecommunications (3rd / 4th / 5th / 6th / 7th semester), University of the 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.

Data and Information Visualization (2 semesters, 2006 – 2008)
Department of Computer Science and Technology (6th semester), University of the 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 the 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 the 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 the 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 the 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 [B3]).

Supervision of Theses

PhD Theses

2017 – today
Co-supervisor (with V. Drakopoulos) of the PhD thesis of M. Nastakou on applications and visualization of fractals.
2014 – today
Member of the advisory board for the PhD thesis of S. Kontogeorgakos, Creation of User Profiles through Games, Department of Informatics and Telecommunication, University of the Peloponnese (supervisor: G. Lepouras).
2012 – today
Member of the advisory board for the PhD thesis of G. Kouyoumtzoglou, Virtual Reality Environments with Applications on Security Issues, Department of Informatics and Telecommunication, University of the Peloponnese (supervisor: G. Lepouras).
2012 – 2016
Member of the advisory board for the PhD thesis of K. Vardis Real time production of cinematic quality virtual environments, Department of Informatics, Athens University of Economics and Business (supervisor: G. Papaioannou).

Postgraduate Theses

2013
M. Nastakou, L-Systems and implementation in Scratch.
2013
S. Choraiti, Game Theory and optimization problems.
2012
A. Papageorgiou, Simplification of triangular models on the GPU.
2010
A. Danelakis, E. Saiti, Ray casting of tetrahedral meshes on the GPU. Computer Graphics Lab, Department of Informatics and Telecommunications, University of Athens.
2001
A. Agathos, Surface Reconstruction and Simplification. Computer Graphics Lab, Department of Informatics and Telecommunications, University of Athens (in collaboration with T. Theoharis) (2001).

Graduate Theses

2017
A. Vamvakaris, A system for the management of undergraduate theses.
2016
G. Lakkas, A system for the support of a private medical practice.
2016
G. Parthenios, A system for the management of undergraduate theses.
2015
C. Tziastas, A system for the support of a private medical practice.
2013
D. Giouroukis, ChordViz, a Chord protocol visualization (in collaboration with Chr. Tryfonopoulos).
2013
G. Kallivokas, Visualization methods for text corpora analysis tools.
2012
A.-I. Kolios, Implementation and Comparison of Ray-Tetrahedron Intersection Algorithms on the GPU.
2006
A. Danelakis, E. Saiti, Multiresolution Visualization of Vector Fields over Tetrahedral Meshes. Computer Graphics Lab, Department of Informatics and Telecommunications, University of Athens.
2002
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 T. Theoharis and Dr V. Drakopoulos).

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)
International Baccalaureate Diploma Programme, Ziridis School

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.