Det är rätt simpelt. Den gamla init-processen är en hög med shellscript vem som helst kan rätt lätt styra upp, och det finns inga externa beroenden. Medan systemd är en allt växande skara binärer med få möjligheter att modifiera beteendet över, och att de allt mer har beroenden till varandra. Dessutom finns det allt mer integration och beroenden mellan init-processen systemd och andra binärer som dbus, eller desktop-delar av systemet vilket gör att det blivit "allt eller inget".
Tyvärr har systemds komplexitet också lett till att man måste använda nya verktyg för att öht hantera sina maskiner och den gamla men väletablerade unix-filosofin har försvinnit.
systemd gör allt för många saker "samtidigt" och spottar inte inte ur sig text. Utan man måste ha andra binärer för att läsa loggar etc. Det är inte alls i enlighet med de gamla principerna.
Det har dessutom förekommit hårdkodningar mot t.ex Googles tidservrar i systemd-koden vilket leder till än mer "hat" mot hela konceptet. Det är helt enkelt något byggt av någon som inte bryr sig om idéerna bakom varför det öppna unix/*nix en gång i tiden skapades utan av helt andra ideal.
Utöver detta har det skapat en rejäl split mellan *BSD och Linux för att fler och fler desktop-miljöer kräver t.ex dbus som kräver systemd etc. Och projekt har inte oändligt med resurser så de får helt enkelt överge delarna med färre användare för att öht hänga med.
Summerat kan man säga att om man uppskattar det gamla UNIX/BSD så är systemd det som delar *nix-världen i det gamla och det nya rent praktiskt. Det går inte att kombinera.
Att ngn hårdkodat mot Googles time servrar låter som ett ärligt och mycket lättfixat misstag. Dessutom lär ju funktionaliteten vara hundra gånger större hos systemd.