I recently removed dbus from my system (along with consolekit and polkit). I didn't notice any change (I was running it as system daemon and per-user from .xinitrc). However, many people claim that one just need dbus, most of linux applications are using it etc etc. My question is, why do I need it? I don't think I understand what does it exactly do. I know that is a "message bus system", that processes communicate through it etc. And? I still don't know what do I gain from using it. Could someone explain it to me, preferably with examples "from real life"?
As an end-user, you don't. There is nothing that D-Bus does that couldn't be done a different way.
The benefits of D-Bus are primarily of interest to developers. It unifies several tricky bits of functionality (object-oriented and type-safe messaging, daemon activation, event notification, transport independence) under a single facility that works the same regardless of what programming language or windowing toolkit is in use.