I was thinking about the 21 million coins that will ever be "printed".
But what will prevent people from creating fractions of satoshis digitally? Like 0.1 satoshi, then 0.01 satoshi... then 0.00001 satoshi... then 0.0000000000001 satoshis
If people can create fractions of satoshis withou limits, it's the same as creating more than 21 million coins isn't it? In the end it's just the same as having unlimited supply
Altcoins already accomplish this.
No, altcoins don't accomplish it. Creating separate currencies doesn't debase each individual currency. The only way that would happen is if everyone treated alt-coins exactly as they do Bitcoin, meaning they were accepted everywhere bitcoin was and at a comensurate exchange rate so the affect would be people wouldn't care whether they had a bitcoin or a dogecoin, because each tended to be equal. That's clearly not the case.
People may choose to hold more than one type coin/currency, but what gives each currency its value is
how many people choose the same currency. The reason Bitcoin reigns supreme is that although there are countless alt-coins, out of everyone that holds cryptocurrency (probably in the millions now) more people accept Bitcoin than anything else. That's because of the network effect which will continue into the future.
OP, I answered this topic at reddit recently. You may find my comment helpful:
So it's less confusing imagine a room full of 50 people. Let's say there is $100 on the table and everyone is told it's their lucky day since it will be divided evenly between them. That means each of the 50 people gets exactly $2 ($2 x 50 = $100). Now, 1 penny is the smallest unit of a US dollar. Let's say on that table was still $100, but it was all in pennies! If we divided the money evenly between the people each person would still get $2 total. However, they would actually have 200 pennies, because on the table was 10,000 pennies (50 * 200 pennies = 10,000 pennies). Simply because we divided whole dollars into smaller units doesn't increase number of whole dollars. Similarly, dividing whole bitcoins into smaller units doesn't increase the number of whole bitcoins in existence. This means if billions of people use 21 million bitcoins chances are each whole bitcoin will be worth many thousands of dollars (or more), although we may call fractions of bitcoins something else like mBTC.
Second part of the answer:
Bitcoin doesn't have 21 trillion whole units. Bitcoin may have trillions of fractional units, even zillions of fractional units are possible, but that doesn't matter so long as the fractions add up to only the whole. Another way to think of it is in terms of US dollars. The penny is the smallest physical unit of one dollar, but you can trade fractions of pennies too, for example on exchanges like BTC-E. So there is such a thing as zillions of fractional dollars in existence now, but only trillions of whole dollars.