I'm inclined to think that close is the cleaner solution here when
we're talking about making closing workspaces on Gala work properly,
making "opening" (re-opening technically) these apps work as
expected, etc. Think about it this way: How many apps does a user
maybe want to be running in the background on start-up 24/7? Here's
a few background apps I know that I have running on my Phone:
Twitter
Facebook
Email
Messages
ESPN (gotta know when Barça is playing)
Music
Calls
Mint (I get alerts if I go over-budget)
Fitocracy
Does it make sense to have all these windows minimized to my 1st
workspace every time I log in since they all (in at least some way)
need to be running in order to work properly? I just don't think
that makes sense from a window management perspective.
I'll reply with a quote from the very same HIG page:
If the app performs repeat background tasks (such as checking for
new mail), the background tasks should be handled by a separate
daemon.
All the apps from your list except Music perform some background
tasks repeatedly, so they fall into this "background daemon"
category. More specifically, they wait for some event and notify you
when it happens. Of course it's counter-productive to make them all
clutter the dock at all times.
However, showing a dock badge with the number of action items in the
app is an important means of notifying the user about the event
because this way the dock provides a persistent overview of remaining
action items. Dock badges are complementary to showing a notification
but they're also important because the user is not always willing to
react to a notification immediately and notification backlogs are far
too cluttered to be useful.
The way I see it, these "background daemons" should only display an
icon in the dock when the daemon has some new action items. Although
the definition of "new" is a bit vague here - looking at how some
people never get the unread mail count in their inbox to zero, I
doubt it's a good idea to show an email client inon in the dock with
the badge "243" all the time. Maybe it's better to only show the icon
when the number of unread threads increases or display the number of
unread emails since you last checked the inbox instead of the actual
count of unread threads. But this is a topic for another discussion.
And regarding that quote, I have a bone to pick:
If the app performs repeat background tasks (such as checking for
new mail), the background tasks should be handled by a separate
daemon.
Not only the Human Interface Guidelines advice on the matters of
software architecture, they also provide no rationale for doing so.
It's as ridiculous as an interior designer writing "and by the way,
only build houses on this type of foundation" in a book on interior
design. I mean, what can interior designers possibly know about
foundations? And why do they even care?