A list of courses, workshops and lectures I’ve taught over the years.

Web development: Fundamentals of Web architecture and Web programming using HTML, CSS, JavaScript, PHP.

Mobile application development: Programming Web applications for mobile devices, using responsive design and usability guidelines for mobile user interfaces.

Human Computer-Interaction: Fundamentals of HCI, human factors, user-centred design and usability evaluation.

Selected topics on Web Technologies: Selected key topics for advanced Web development: distributed computing, information retrieval, e-commerce, social networks, data visualisation.

Object oriented programming: Introductory course to object oriented programming with a focus on practical problem-solving skills, flow control and OOP concepts.

Software design patterns: Advanced programming course about using design patterns, software architecture, code analysis, refactoring and best practices.

Business process re-engineering: Using analytical skills to diagnose problems in business processes, modelling, design and optimisation of workflows to achieve better performance.


  • Android mobile development
  • Ruby on Rails web development
  • Augmented Reality applications