Teaching and Learning
The typical aims of courses of this type is to understand how SIMPLE Discrete Maths may help us make sense of large Complex Networks, and understand the Software Development Opportunities offered by the emergence of complex networks in real life.
Programming and Problem Solving
Programming and Problems Solving are fundamental processes in the human mind and in machines. I am been involved in teaching various programming course (C++, Java, Ada, Objective-C) and several more abstract "design" modules.
I am also interested in teaching Discrete Maths, in particular Graph Theory, and Combinatorics. The word DISCRETE is bracketed as often discrete concepts or proof techniques have a foundation in more general mathematical theories (e.g. functional analysis, or measure theory) and these are also very interesting subjects.