"So the randomness comes from the inability of describing the world completely, is that true?"
I think you are right. However, if the "inability of describing the world completely" is certain to us, random exist, to us.
Maybe, randomness is not universal, but relative to the object concerned.
In a computer, although every instruction is determined, environment out of the world is not. eg. consider we are writing an application that throw a dice when the user click a button. We may use clock() to generate a random number.
Here the randomness is determined by time. Assuming a user (or device) can not distinguish time from 1ms. And our computer's clock() has resolution of 1/6 ms. Shall we treat it as a true random (to the player).