Throughout my academic career, I had the opportunity to initiate, develop and teach many graduate and undergraduate courses, as well as mentor students at all levels. I had been fully or partially lecturing at many institutes, e.g., University of Cyprus, University of Nicosia, Cyprus University of Technology, and Cyprus College, where I was responsible for the teaching of numerous courses, including
Also, I served as teaching assistant at the University of Cambridge, where I was responsible for the second year information engineering laboratories.
Semester: Fall
Level (Type): Undergraduate (Compulsory)
Credits: 7.5 ECTS units
Prerequisite: EPL131 - Programming Principles I
Overview: The course teaches intermediate and advanced programming concepts, techniques and tools through a language that compiles to machine code. The course familiarizes the students with advanced programming constructs utilized for handling memory and files. Advanced topics in compilation, debugging, documentation and optimization of software. Methodological aspects in developing large-scale system software that addresses complex problems. Basic commands for programmers in the UNIX operating system.
Semester: Spring
Level (Type): Undergraduate (Restricted choice)
Credits: 7.5 ECTS units
Prerequisite: EPL232 - Programming Techniques and Tools
Overview: The course teaches the basic principles of computer graphics. The course familiriazes students with the concepts of scene construction, scene hierarchies, camera specification, projections of primitives, clipping, visible surface determination, polygon rasterisation (z-buffer), texture mapping, local and global illumination, shadows, ray tracing, radiosity, real-time acceleration techniques. Provision of both the theoretical foundations as well as practical skills through the use of industry standards, such as OpenGL and the Unity game engine.
© 2017 Andreas Aristidou