Design of the MiniZinc language, lazy clause generation solvers, modelling interesting problems, developing and teaching Modeling Discrete Optimization.