systemd is complex on first view, but after using it you didn't want to use anything else. It's handy to manage everything using systemctl
That and systemd having actually useful man pages.
Some people see it differently. As in: after using it they don't want to use it. I hate systemd with passion.
But that's because I'm old because obviously systemd-* is the only right way and everyone else who see things differently is a pundit.
I still hate journald logging though
This is such a modern view. People used to HATE systemd when it first came out, but I always liked it and knew people would eventually come around and its nice to see they finally did!
I hard disagree. Previously I could use what I knew about Linux commands to read logs and administer the systemm. Systemctl knowledge does not generalize.
I have done scheme all my life, which is why I prefer shepherd. Not only is it in a syntax that i can use elsewhere, I get completion in Emacs.
There are still some weird things/choices in its design I don't fully understand.
For example, why do unit definitions have to be actual files on disk? Then, all of these files are reloaded when the daemon reloads, not just changed ones. But, why couldn't there be an API letting me add units programmatically? (There kind of is but it's constrained/inflexible)
Or, why can't I declare multiple units in the same file? It's really designed around the filesystem instead of abstracting at a different level, which is a choice I don't think is smart. It's not like it follows the unix philosophy though.
As for the format used for unit definitions, I wish TOML had been around so they could have had something sensible...