I understand and generally share your preference for plain text over XML, but there's one major advantage to using XML: configuration files can be (are) validated before they're loaded. So, instead of launchd choking because there's missing punctuation or an invisible control character inserted somewhere, it simply logs the error and moves on the next program to be launched (as long as it's not dependent on a program that failed to launch).
I've used launchd to run server deamons, I've also used the traditional *nix methods and Apple's pre-Tiger method. Launchd is a big improvement.
I understand and generally share your preference for plain text over XML, but there's one major advantage to using XML: configuration files can be (are) validated before they're loaded. So, instead of launchd choking because there's missing punctuation or an invisible control character inserted somewhere, it simply logs the error and moves on the next program to be launched (as long as it's not dependent on a program that failed to launch).
I've used launchd to run server deamons, I've also used the traditional *nix methods and Apple's pre-Tiger method. Launchd is a big improvement.