I do think it's pretty funny that everybody who is against systemd seems to be unable to spell it right. I mean come on the systemd page on freedesktop.org
has a section dedicated to the spelling.
That aside, I personally don't get all the systemd hate. It DOES solve a large amount of problems, for instance every process started by systemd (meaning every process since login sessions are also started by systemd (logind actually but it's part of systemd)) is put in a cgroup of the starting service. This means that it's now trivial for an administrator to track down which processes are started by which services, no matter how many times they fork.
The binary log is a bit annoying but there are tools shipped with systemd that can export the journal to text formats. Plus, it's more than just syslog messages that go in the journal, you also get STDERR of anything started by systemd, useful in tracking down problems.
As to breaking compatibility with non-Linux, well as a FreeBSD convert (on my servers anyway, desktops are still Linux) all I can say is I think rc(8) might be my favorite init system. It takes the simplicity of sysvinit but builds on it in a very nice way with wonderfully easy dependency management. rcorder(8) then presents all this information for you so you don't have to manually walk the dependency tree to figure out why your application that requires the network to be started is somehow trying to start before the network comes up. I actually had that problem with sabnzbd and within 3 minutes had found the problem and sent a patch to the port maintainer to get it fixed in the sabnzbd port.