I'm a PhD student working on the specification and implementation of visual languages like UML. I'm interested in software architecture and programming languages. What got me here was to look for patterns about system configuration. That is, how to make the composition of a (sub)system from components as flexible as possible. I think that the components should be aware of the system that they are part of in order to configure themselves and to make the right connections between other components.