We all know that certain software design principles help with system maintenance. Assigning every module a single responsibility is one such principle. It’s common that these principles are only applied at early stages of development, since it’s much easier to follow good practices when the system is still in on pen-and-paper. It gets harder with a real programming language. One picture can say a thousand words. Wouldn’t it be nice if we could see an architecturial diagram of our application at any time? Not as designed, but as actually running in production. In this talk Rafał will show you how.