Projects

Below you can find a list of the projects I completed during my undergraduate & postgraduate
studies. They consist of applications, reports, project presentations, paper presentations,
exercises and more. If you have any questions feel free to contact me.

(all projects are in English)
  • Master's Thesis: 'Navigating large information spaces on wall displays using mobile devices'
    My master's thesis (6-month research internship) took place in Situated Interaction Lab in Paris, France.
    Date of defense: September 5th, 2012
    - Master's thesis
    - Presentation
    - If you're interested in the video of my presentation, feel free to contact me.

  • Crossing-based interface
    This project consists of a java drawing application in which all components are activated by crossing them and not by the traditional point & click. An experiment was also conducted to test the performance of crossing techniques compared to traditional pointing. (Technologies used: Java, Eclipse IDE, TouchStone platform)
    - Executable jar file of the drawing application
    Source code of the drawing application
    Source code of the conducted experiment
    Results of the experiment (.xlsx file)
    - Project presentation

  • Films Visualization
    An interactive scatter plot that can display more than 1000 films that are included in a specific dataset. Users can interact dynamically with the scatter plot using 10 different techniques. (Technologies used: Java, Processing IDE)
    - Online applet
    - Executable application for WindowsMac OS X, Linux

  • Interactive Map of France
    An interactive map of France through which users can retrieve directly information about the
    population of each city. (Technologies used: Java, Processing IDE)
    - Online applet
    - Executable application for Windows, Mac OS X, Linux

  • Pong Android Application
    A simple pong game for the Android OS. (Technologies used: Java, Android SDK, Eclipse IDE)
    - Android application (.apk file)
    - Source code

  • Augmented Reality Pong Game
    A simple pong game that you can play using your webcam and 2 printed markers. The markers are recognized with your webcam which triggers the display of the game components. (Technologies used: C++, OpenGL, Visual Studio, ARToolKit)
    - Executable file of the game including instructions
    - Source code of the application
    - Markers that are needed to be printed
    - Project report

  • Emotion Generator
    This application can generate the output emotion based on the input consequences of an event, actions of an agent or aspects of an object. The structure of the application is based on the paper "The OCC Model Revisited" (Steunebrink et al., 2009). (Technologies used: Java,
    Processing IDE)
    - Paper
    - Executable application for Windows, Mac OS X, Linux
    - Source code

  • Paper Presentation
    Presentation of the paper "Interactive Analysis of Event Data Using Space-Time Cube"
    (Gatalsky et al., 2004).
    - Paper
    - Presentation

  • Paper Presentation
    Presentation of the paper "Expressive Facial Animation Synthesis by Learning Speech Coarticulation and Expression Spaces" (Deng et al., 2006).
    - Paper
    - Presentation

  • Design and Evaluation of Interactive Systems (Interactive Whiteboards)
    The purpose of this project is to design a system that uses interactive whiteboards that solves
    problems that occur when using traditional whiteboards. The project consists of multiple phases: user insights, user profile, technical possibilities, design space, design brief, design alternatives, design studies and implications for design. (Group project)
    - Interview conducted to identify key problems of traditional whiteboards
    - Video prototype of our system
    - Final project report and presentation

  • Haptic Interaction
    Basic interactions with an haptic arm (input/output, simulating surfaces, simulating objects &
    collision detection). (Technologies used: C, Visual Studio, Haptic arm SDK)
    - Haptic arm description
    - 1st exercise - solution
    - 2nd exercise - solution

  • Ergonomic Evaluation
    This project consists of the study and analysis of a specific product in order to evaluate its usage. The product that was studied is a specific digital camera. 12 people (6 beginners, 6 experts) participated in the experiment and each one of them had to complete a standard task. In addition, an easy task had to be completed by the 6 beginners and a difficult task by the 6 expert users. The evaluation methods include tracking of users actions, individual analysis, transversal analysis and questionnaires. (Group project)
    - Project presentation/results

  • Mixed Reality: Technological Aspects & Future Possibilities
    This project is based on a Japanese science fiction anime series depicting a near future where
    semi-immersive augmented reality technology has just begun to enter the mainstream. The
    purpose of the project is to address the technological aspects of mixed and augmented
    reality and at the same time reveal the future possibilities and foreseeable limitations,
    through the careful analysis of an episode of the series.
    - Series description
    - Project report
School of Electrical and Computer Engineering (N.T.U.A.)
(most of the projects are in Greek)
  • Diploma Thesis: 'Development of a web-based, multimedia content management,
    application within the Android environment'
    - Abstract (in Greek)
    - Abstract (in English)
    - Diploma Thesis (in Greek)
    - Diploma Thesis (in English) (in progress)
    - Presentation (in Greek)

  • SIP Communicator Extended
    The purpose of this project is to extend the SIP Communicator VoIP application in order to add
    more functions and operations (user registration, log in, call blocking and billing policy).
    (Technologies used: Java, JMF, NetBeans IDE) (Group project)
    - Project description
    - Source code including executable files
    - SRS (System Requirements Specification) document
    - SDD (Software Specification Document)

  • Design and Implementation of an E-shop
    This project consists of the design and implementation of a website that represents an online shop. Users would be able to register, log in, browse the shop's products, view their shopping basket, place orders and view their orders history. (Technologies used: Java, JSP, SQL, NetBeans IDE)
    - Project description
    - Source code
    - Project report

  • ePaintings (Human-Computer Interaction)
    The purpose of this project is to design a website for online paintings exhibition that would be similar to a physical art museum. This project includes the analysis of user profiles & requirements, usability studies and a final prototype of the system.
    - Project description
    - Project report

  • KLM - GOMS (Human-Computer Interaction)
    Usability studies of specific tasks using the models KLM and GOMS.
    - Project description
    - Project report

  • Web Applications
    Exercises in the course of Web Applications. (Technologies used: Java Servlets, JSP, XML, SOAP)
    - Descriptions / Reports / Source code

  • Advanced Computer Architecture
    4 exercises related to branch predictors, tomasulo algorithm and Simics simulations for specific benchmarks. (Technologies used: C, C++)
    - Descriptions / Benchmark results / Reports

  • Computer System Performance Evaluation
    2 exercises for measuring and evaluating the performance of specific computer systems.
    (Technologies used: C++)
    - Descriptions / Reports

  • Databases application
    This project consists of a web application that communicates to a database set in SQL Server.
    (Technologies used: Java, SQL, NetBeans IDE, MS SQL Server) (Group project)
    - Project description
    - Source code

  • Databases exercises
    Exercises related to B+ trees, ER (Entity-Relationship) model and Relational model.
    (Technologies used: MS Visio for designing the diagrams)
    - Descriptions / Reports

  • Microprocessor exercises
    Several microprocessor applications implemented using an Assembly language.
    (Technologies used: Assembly 8085/8086, AVR Studio)
    - Descriptions / Reports / Source code

  • Operating systems exercises
    4 exercises related to parallel computing, processes synchronization, pipelines and schedulers. (Technologies used: C)
    - Descriptions / Reports / Source code

  • Artificial Intelligence exercises
    Several sample exercises in the course of Artificial Intelligence.
    - Descriptions / Reports
Other projects
(projects developed just as a hobby in my free time)
  • FindmyPhoto Android Application
    During my diploma thesis I developed an Android application that can recognize images that are captured with the phone camera or any other image the user would like to analyze. The functionalities are similar to the Google Goggles android application. When the user captures an image, the image is being sent to a server which performs the analysis using image processing techniques. As a result the user can obtain information about the image that he captured; name of the landmark, city, country, map coordinates, similar images, etc.
    - Download from Google Play

  • Random All-in-One Generator Android Application
    As the title reveals, this application can generate random numbers, strings, cards, etc. If you own an Android device you can download the application from Google Play, it's free.
    - Download from Google Play

  • More Android Applications
    I have already published several Android applications on Google Play. For more information just send me an email.
  • Angry Heads
    This is a funny game I developed using Java and Processing IDE, dedicated to my friends. The concept is similar to the popular Angry Birds game. However instead of throwing birds you can throw my friends' heads :) Feel free to try it.
    - Angry Heads for Windows, Mac OS X, Linux

  • URL Shortening Website
    This project is actually a ready-to-use online service for URL shortening. I developed it using JSP and SQL for storing the URL's in an online database. Users can either generate a random URL or use their own custom name. I had actually bought a domain and hosting space and the website was up and running for about 2 months, but afterwards I didn't have time to maintain it so I decided it to shut it down. However I hadn't encountered any bugs at all. You can download the source code and use it for your own URL shortening service. You just need a web host, a domain name and an online database.
    - Source code