do you have another quote where he explicitly says "20 hours"?
Yes, about 20 hours. (120 conf / 6 blocks per hour = 20 hours) That's the normal length of time before you can spend it. You know long before that that you won one.
I can also better explain that "10 minutes vs 15 minutes part" if you want:
int64 GetBlockValue(int64 nFees)
{
int64 nSubsidy = 10000 * CENT;
for (int i = 100000; i <= nBestHeight; i += 100000)
nSubsidy /= 2;
return nSubsidy + nFees;
}
unsigned int GetNextWorkRequired(const CBlockIndex* pindexLast)
{
const unsigned int nTargetTimespan = 30 * 24 * 60 * 60;
const unsigned int nTargetSpacing = 15 * 60;
const unsigned int nIntervals = nTargetTimespan / nTargetSpacing;
That means:
1. The basic block reward was 100 coins, instead of 50, at the very beginning.
2. There were halvings after 100,000 blocks, instead of every 210,000 blocks.
3. Each difficulty adjustment was done every 30 days (one month), because "nTargetTimespan" is expressed in seconds. Now we have "two weeks", so "14 days", if you compare it with a new version.
4. Each block was produced every 15 minutes, instead of 10 minutes (like previously, "nTargetSpacing" is expressed in seconds).
5. Each halving was done every 100,000 blocks, which means every 25000 hours, so around 1041 days, which means around 2 years and 311 days. This is not a nice number, currently we have it every "4 years".
6. The total supply was 20 million coins, instead of 21 million, at the very beginning (combine points one and two).
You can compare those fragments between versions, and try to create a better combination of numbers, where everything is rounded correctly, and produce "nice numbers" in every step. This part is hard, and you can see, that what we have today, is quite good combination, that is not that obvious from the very beginning, as you can see in those older parts.