Numbers to the Power of Zero
It's basically just a matter of what you define the notation to mean. You can define things to mean whatever you want -- except that if you choose a definition that leads to different results than everyone else's definitions give, then you're responsible for any confusion brought about by your using a familiar notation to mean something nonstandard.
Most commonly we define $x^0$ to mean $1$ for any $x$. What you find in discussions elsewhere are argument that this is a useful definition, not arguments that it is correct. (Definitions are correct because we choose them, not for any other reason. That's why they are definitions).
Some people choose (for certain purposes) to explicitly refrain from defining $0^0$ to mean anything. That choice is (supposedly) useful because then the map $x,y\mapsto x^y$ is continuous in the entire subset of $\mathbb R\times\mathbb R$ it is defined on. But it's an equally valid choice to define $0^0$ to mean $1$ and then just remember that $x,y\mapsto x^y$ is not continuous at $(0,0)$.
The invention of numbers was one of the biggest breakthroughs in the history of math. It marked the realization that this sack of pebbles $$\{ \blacktriangle\;\blacktriangle\;\blacktriangle\;\blacktriangle\;\blacktriangle \}$$ this string of knots $$-\bullet-\bullet-\bullet-\bullet-\bullet-$$ and this bone full of tally marks $$/\,/\,/\,/\,/$$ are all incarnations of a single thing, the abstract quantity five. That leap of abstraction has become so prosaic for us that it almost feels weird to do arithmetic by actually counting things. In some cases, though, it can be illuminating to go back to the basics—back to the days when we didn't have numbers, and we did all our arithmetic by counting things. Your question is one of those cases.
In what follows, I'll use a capital letter like $X$ to stand for a finite set of things, like a herd of goats or a pile of beads, and I'll use the symbol $|X|$ to stand for the number of things in the set.
Exponentiation is a tricky operation, as you've clearly noticed, so let's warm up with something simpler. If you have two piles of beads, $A$ and $B$, the simplest thing you can do with them is shove them together to make a bigger pile, which is often written $A \sqcup B$. You should easily be able to convince yourself that, on the level of numbers, $|A \sqcup B| = |A| + |B|$. In other words, the concrete operation of shoving two piles together corresponds to the abstract operation of adding two numbers. Addition of whole numbers is often defined in this way.
Here's a slightly tougher warm-up. If you have a bunch of shirts, $H$, and a bunch of skirts, $K$, you might wonder how many different outfits you can make by pairing a shirt with a skirt. The set of outfits is usually written $H \times K$. You should be able to convince yourself that $|H \times K| = |H| \cdot |K|$. In other words, the concrete operation of counting pairs corresponds to the abstract operation of multiplication. Multiplication of whole numbers is often defined in this way.
Now that we're warmed up, suppose you have a set of paints, $C$, and a bag of beads, $X$. You might wonder how many different ways there are to color each bead with one of the paints. The set of ways to color the beads is usually written $C^X$. If you try a few examples, you'll see that $|C^X| = |C|^{|X|}$. Exponentiation of whole numbers is often defined this way.
Finally, we can get to your question. Suppose you have a bunch of paints, but the bag of beads is empty. Is it possible for you to paint all the beads? Sure: you just don't do anything! In fact, not doing anything is the only way to paint all the beads in the bag, since there are no beads. So, when the set $C$ has a bunch of paints, but the bag $X$ is empty, $|C^X| = 1$. If you define exponentiation by counting colorings, that means $|C|^0 = 1$ for any positive number $|C|$.
To make matters worse, suppose you have no paints and no beads. Happily, you can still paint all the beads: once again, you just don't do anything. Like before, not doing anything is the only way to paint all the beads, so $|C^X| = 1$ even when both $C$ and $X$ are empty. If you define exponentiation by counting colorings, that means $0^0 = 1$.
On the other hand, suppose you don't have any paints, but you do have some beads. In this case, you can't paint all the beads, because you have no paints! There are just no ways to paint all the beads. In other words, when $C$ is empty but $X$ is not, $|C^X| = 0$. If you define exponentiation by counting colorings, that means $0^{|X|} = 0$ for any positive number $|X|$, just like you'd expect.
Here's a bonus. André Nicolas argued that $0^0$ should be $1$ in order to make the binomial theorem true. Even those weird-looking numbers $\binom{n}{k}$ can be defined using finite sets: if you have $N$ toys and $K$ kids, $\binom{N}{K}$ is the set of ways you can pick out enough toys to have one for each kid. (Note that you don't give each toy to a particular kid: you just want the numbers of kids and toys to be the same.) If you get out your set of paints $C$ and another set of paints $D$ and start painting various numbers of kids and handing out toys based on how many colors of kids there are, you should somehow be able to convince yourself that the binomial theorem is true, even when $C$ doesn't have any paints in it. That's why André Nicolas came up with the same rules for zero exponentials as we just did.
It is for various reasons convenient to define $0^0$ as being equal to $1$. For one thing, consider the Binomial Theorem, or power series. It is useful to be able to write $$(1+x)^n =\sum_{k=0}^n \binom{n}{k}x^k,$$ or $$e^x=\sum_{k=0}^\infty \frac{x^k}{k!}.$$ In each of these equations, if we want the expression on the right to give the correct answer when $x=0$, we need to set $0^0=1$.