In code-reviews I see a lot of people using Ti.App.fireEvent() and Ti.App.addEventListener() to fire and listen to custom events. This is often used to send instructions between different parts of the app that have no direct reference of each other. Because everyting has access to global objects like Ti.App, it’s indeed easy to use it as a global event dispatcher. However, there are 2 good reasons