News for hackers. Stuff that matters.
Re:DBus, FreeDesktop, and lots of madness by pjc50 on Sunday November 23, 2014 @03:19PM (#8649783)
Interesting, because one of the things that attracts me to Linux over Windows is the use of well-defined interoperable wire protocols rather than RPC systems. This makes it much easier for the different ends of the communication to be written by unrelated teams without quite such coordination costs. Meanwhile RPC-style is much easier if the same team is writing both ends.

This is why there are a zillion IMAP clients and several servers but only one reliable Exchange client and server, the Microsoft one. The wire protocol is basically MAPI over DCOM, and this requires a server architecture identical to the MS one (and at much greater risk of copyright/patent problems).

GNOME have been able to produce such a bad wire protocol for dbus because they're writing both ends and happy to break compatibility regularly. It doesn't have to be this way and is a function of the project management style.

(There are some Linux clients for Exchange but no server, which is the wrong way round as it's much easier to get people to switch on the server rather than the desktop)

Re:DBus, FreeDesktop, and lots of madness by quotemstr on Sunday November 23, 2014 @03:27PM (#8649807)
> because one of the things that attracts me to Linux over Windows is the use of well-defined interoperable wire protocols rather than RPC systems.

NFS is an RPC system. Both protocol-based and RPC-based systems can be well-documented and well-specified. Both kinds of system can be arbitrary nightmares. I don't think you're drawing a useful distinction. Both ecosystems have some services provided over RPC and some services provided over some kind of other message format.

> [RPC] requires a server architecture identical to the MS one

No it doesn't. It "requires" Exchange-style architecture in the same way that IMAP "requires" maildir storage. In the end, you have a message-passing protocol, and you can choose to respond to messages any way you'd like.

> GNOME have been able to produce such a bad wire protocol for dbus because they're writing both ends and happy to break compatibility regularly

They claim that the dbus wire protocol is stable and that individual dbus services will present broadly compatible interfaces. Dbus is for everyone, not just internal communication inside GNOME. That's what makes dbus being awful especially annoying.

Re:DBus, FreeDesktop, and lots of madness by pjc50 on Sunday November 23, 2014 @04:51PM (#8650072)
It's a stylistic opinion rather than a hard distinction. Yes, in both cases you're exchanging messages and responses between turing-equivalent systems. However, the systems you end up with are different depending on which pieces are designed first and with higher priority.