"Intuitive" coding will have to wait. About synchronous generators of "random" numbers.
It is possible to create generators of "random" numbers that, without information exchange (secretly), will create the same set of random numbers. You can make it so that it will be really random numbers, for example, based on the thermal noise of the transistor. It's simple. Somewhere there is a hardware server that creates a random digital stream. Two or more application instances listen to a stream and wait for a given combination of bytes to appear. After that, according to some algorithm, as many bytes are selected from the stream as needed to encode information. During the day, you can collect several keys (regulated by the number of bytes to wait). On the receiving side, the same is done and the received message is decremented by one of the found keys. The vulnerability of the method lies in the possibility of identifying users connected to such a server with digital noise. This is the weakness of the server https://www.random.org/
If, however, public digital streams (Internet radio or TV) are used instead of a special server, then it is problematic to detect a couple of users among the connected users who create an encrypted channel. They don't stand out in any way. However, the quality of the Internet radio or TV digital channel is worse. This is not a random noise stream. However, there are ways to improve it. It is necessary to split the stream before listening and use stream transformation WITHOUT FORMULA.