The name, not number of a pin has its uses, but it isn't as important as the pin's number. And in case you aren't sufficiently confused yet: a pad has a net name, but not a "name".
This page has been checked to see that confusion in my brain (before 9 November, 2011) about the roles of pin names and pin and pad numbers hasn't led to errors here. I have a page with more on this if you are really curious.
——
Be careful to keep the concepts of number, name and net name properties clear in your mind. They are three different things. The fact that "Vcc" is acceptable as a valid pin or pad "number" doesn't help!
You may also find times when you are confusing a schematic symbol or footprint's name with a pin or pad name.
Each pin of a schematic symbol has a "name".
Each pad of a footprint (or module) has a "net name".
Both pins and pads have a number… which may be something like "Vcc" (funny kind of "number"!)… and which is important.
Concerning pin names….
It is unwise to use any spaces in the name of a pin. If you don't like "DoingItLikeThis", you can underscores, "Doing_it_like_this".
Names should consist of letters and digits… only… except for the following special cases:
Un-named pins While a pin should never lack a number, it is acceptable to create pins with no name. If this is what you want, you should enter a tilde (~) in the "name" box of the pin's properties. (I believe you can also set things up so that a pin has a name, but it isn't shown… but I'm not sure of this.)
Names for inverted signals: Use a tilde (~) for the first character of the name. I believe (not sure) that this only results in a bar over the name, when it is displayed. Helpful. No downside. (As far as I know!) (See "minimum length", above, for another use of the tilde.)
What is an "inverted signal"? Let's start with an ordinary, not inverted, signal on an imaginary buzzer. When this signal, perhaps named "Buzz" is high, the buzzer buzzes. When it is low, the buzzer is silent. If the buzzer works the other way around, i.e. it buzzes when signal is low, then the signal's name could be "Sssh" (for "shush", quiet.), or the name could be "~Buzz", which you would read "Not Buzz". (The tilde does not appear on the screen when the schematic symbol is used… instead the name appears with a bar over it.) This would be an example of an "inverted signal". They are shown on some non-KiCad circuit diagrams as /Buzz. It's all just semantics. You can change an "inverted signal" into a "not inverted signal" simply by changing the name, e.g. from "Not Buzz" to "Sssh". However, using "inverted signals" is useful when you are used to it, and common.
Power ports: The eeSchema manual had an entry saying "Pin names starting with “#”, are reserved for power port symbols." (Feb 11 version of manual, section 11.6.1)
I think that is an error, or simply out of daye, based on my examination of some of the power ports supplied with KiCad.
This isn't really the place to go into all the details, but I believe that it is the "reference" property of the entire power port schematic symbol on the schematic which will normally start with a hash (#), perhaps as part of what defines it as a power port… or at least to make things "work" for the DRC. If you load a power port into the schematic symbol editor, you won't see a hash on the pin name. It is when you examine a power port schematic symbol which has been placed on a schematic that you see the hash… on the property of the power port called "reference". (In struggling with this, keep in mind that a power port is a schematic symbol, just as, for instance, a lion is a mammal.)