I think the supermajority says 1, but a determined minority says 0. I agree with Wolfram Alpha and say you haven't given me enough information to say yet.
It really depends on which question you're actually asking. Obviously we "generally" treat exponentiation as an algorithm, but most mathematicians with interest in foundations will tell you that integer exponentiation is counting something.
From a combinatorial perspective, we say a^b is the number of ways you can make a choice from a options b times in a row. And normally there are no ways to make choices from zero things (and thus 0^1 or 0^5 is 0), but if the number of choices you need to make is zero then it's not a problem. How many ways can you make an impossible choice zero times? One: you don't make any choices.
Oddly enough, this logic extends deep into fundamentals. A set theorist, category theorist, algebraist, or foundations person will tell you that A^B is the set of functions from the set B to the set A. If B is a finite set with b elements and A is a finite set with a elements, then A^B has a^b elements. (Why? To determine a function from B to A we need to decide where the first element of B goes, and where the second goes, etc. So we have to make b choices from a options.)
But this logic and notation extends to places you weren't really thinking about it. We use R^3 to represent triples of real numbers. But we can also think of that as a function from {1,2,3} to R! The first coordinate is f(1), the second coordinate is f(2), and the third coordinate is f(3). And that means we can write things like 2^N for the set of binary sequences, or R^N for the set of real sequences.
And in this framework, we still have 0^0=1. In general 0^n is 0, because you can't have any functions from a non-empty set to an empty set. But there is one function from the empty set to the empty set: the empty function. (This sounds like bullshit but it's a real thing and this is unambiguously right once you get into rigorous foundations stuff.)
Okay, so why isn't there a total consensus? If you do analysis (read: formal, fancy calculus), it's not that clear cut. Analysts don't generally want to count things; they want to make things continuous. And the original question makes total sense in an analysis framework.
If you look at the function f(a) = a^0, then f(a) = 1 for any non-zero a. To make this function continuous, you set f(0) = 1. But if you look at the function g(b) = 0^b, then this is undefined for b<0, and is 0 if b>0. For continuity, you'd want to set g(b) = 0.
We can take a step more general and look at h(a,b) = a^b. There is no way to make this continuous at (0,0), so there's no unique definition for that point. Depending on what path you use to approach (0,0), the limit can be any non-negative real number (including zero) or infinity. So from an analysis perspective it really is deeply undefined.