Sadly, not all tagging software is coded equal. Sometimes tags are thrown in as just one more bell or whistle, intended to plump up a feature-set without being particularly useful. Other times developers don’t understand tags themselves and end up implementing them in a way that is not as friendly as it should be. Sometimes supporting spaces in tags causes other problems (such is the case when trying to roll your own tagging system using Spotlight comments).
In any case, you may well run across a piece of tagging software that does not allow you to use spaces in your tags, which can be a major pain in the nether regions. What you do about it is really up to you (although of course I have some suggestions), but when you decide remember the tagging mantra: consistency, consistency, consistency. Pick something and stick with it.
Developers disallow spaces in tags for any number of reasons. Some, such as the difficulties with Spotlight comments, are totally legit and you just have to work around them. Others, such as the idea that tags should only ever be a single word, merely show that they don’t really understand tagging (sometimes it is impossible to use a single word; for instance, when I’m using Cha-Ching to file my financial expenses, I need to tag some of them “one crayon” so I know it’s a One Crayon business expense; thankfully, Cha-Ching is friendly about spaces). In these cases, file those feature requests!
Whatever the reasons, we’re living in the present and not some perfect world of the future, so your best option is to use some character to substitute for a space.
I highly recommend the underscore. Underscores have been a standard space replacement online for quite some time; it looks kind of like a space, it’s about the same size as a space, and it doesn’t really have any other practical usage now that typewriters are out of fashion.
Other good options are the hyphen and the plus sign, but they are less desirable for two reasons: 1) they are more intrusive when it comes to reading the tag, and 2) they are sometimes used for more powerful searching. Of course, if the software developer disallowed spaces, then they may well not support AND/OR and NOT searching, but you never know what the future may hold.
Another option, of course, is to go wiki-style and use camel case (for example: “ShortStory”). I personally advise against this because it opens up an even nastier can of worms than normal in the lowercase/uppercase debate (do you capitalize the first word or not? What about for proper nouns?), but it is as always up to you.
If you are lucky, of course, the software will be friendly enough to substitute an underscore when you hit the spacebar (instead of completing the tag). But if not, go with the underscore anyway. It’s a winner.